.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/basics/keywords.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code or to run this example in your browser via Binder .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_basics_keywords.py: ======================== 1.21. builtin functions ======================== This lesson shows the usage of builtin functions available in python. These functions are available in python without importing any module. These are not all the builtin functions but only those which are used frequently. .. important:: This lesson is still under development. .. GENERATED FROM PYTHON SOURCE LINES 15-17 slice ======= .. GENERATED FROM PYTHON SOURCE LINES 17-21 .. code-block:: default a = [1,2,3,4,5,6,7,8,9,10] print(a[slice(2)]) .. rst-class:: sphx-glr-script-out .. code-block:: none [1, 2] .. GENERATED FROM PYTHON SOURCE LINES 22-24 .. code-block:: default print(a[slice(2, 8)]) .. rst-class:: sphx-glr-script-out .. code-block:: none [3, 4, 5, 6, 7, 8] .. GENERATED FROM PYTHON SOURCE LINES 25-27 .. code-block:: default print(a[slice(2, 8, 2)]) .. rst-class:: sphx-glr-script-out .. code-block:: none [3, 5, 7] .. GENERATED FROM PYTHON SOURCE LINES 28-33 .. code-block:: default a = "This is a string" print(a[slice(2)]) print(a[slice(2, 8)]) print(a[slice(2, 8, 2)]) .. rst-class:: sphx-glr-script-out .. code-block:: none Th is is i s .. GENERATED FROM PYTHON SOURCE LINES 34-39 .. code-block:: default a = (1,2,3,4,5,6,7,8,9,10) print(a[slice(2)]) print(a[slice(2, 8)]) print(a[slice(2, 8, 2)]) .. rst-class:: sphx-glr-script-out .. code-block:: none (1, 2) (3, 4, 5, 6, 7, 8) (3, 5, 7) .. GENERATED FROM PYTHON SOURCE LINES 40-43 .. code-block:: default a = {1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: 'e'} # print(a[slice(2)]) .. GENERATED FROM PYTHON SOURCE LINES 44-49 Indeed, any python object which can be sliced using ``[]`` operator, can also be sliced using ``slice`` function. Although, ``[]`` operator and ``slice`` function look similar however they differ in their behavior. ``[]`` operator returns the values whereas ``slice`` function returns a ``slice`` object. Moreover, ``slice`` function is more readable and flexible. .. GENERATED FROM PYTHON SOURCE LINES 51-54 zip ===== zip is used to iterate over two or more than two sequences. .. GENERATED FROM PYTHON SOURCE LINES 54-58 .. code-block:: default for i,j in zip([1,2,3], [11, 12, 13, 14]): print(i, j) .. rst-class:: sphx-glr-script-out .. code-block:: none 1 11 2 12 3 13 .. GENERATED FROM PYTHON SOURCE LINES 59-61 any ====== .. GENERATED FROM PYTHON SOURCE LINES 61-64 .. code-block:: default vals = [1,2,3] print(any([val>3 for val in vals])) .. rst-class:: sphx-glr-script-out .. code-block:: none False .. GENERATED FROM PYTHON SOURCE LINES 65-68 .. code-block:: default vals = [1,2,3, 4] print(any([val>3 for val in vals])) .. rst-class:: sphx-glr-script-out .. code-block:: none True .. GENERATED FROM PYTHON SOURCE LINES 69-71 all ===== .. GENERATED FROM PYTHON SOURCE LINES 71-74 .. code-block:: default vals = [1,2,3,4,5] print(all([isinstance(val, int) for val in vals])) .. rst-class:: sphx-glr-script-out .. code-block:: none True .. GENERATED FROM PYTHON SOURCE LINES 75-78 .. code-block:: default vals = [1,2,3,4,5.0] print(all([isinstance(val, int) for val in vals])) .. rst-class:: sphx-glr-script-out .. code-block:: none False .. GENERATED FROM PYTHON SOURCE LINES 79-82 .. code-block:: default vals = [1,2,3,4,5.0] print(all([isinstance(val, (int, float)) for val in vals])) .. rst-class:: sphx-glr-script-out .. code-block:: none True .. GENERATED FROM PYTHON SOURCE LINES 83-86 .. code-block:: default vals = [1,2,3,4,'5.0'] print(all([isinstance(val, (int, float)) for val in vals])) .. rst-class:: sphx-glr-script-out .. code-block:: none False .. GENERATED FROM PYTHON SOURCE LINES 87-90 **Question:** What is the ``type`` of the output returned by ``any`` and ``all`` functions? .. GENERATED FROM PYTHON SOURCE LINES 92-94 sorted ======== .. GENERATED FROM PYTHON SOURCE LINES 94-98 .. code-block:: default vals = ['a', 'b', 'c'] for val in sorted(vals): print(val) .. rst-class:: sphx-glr-script-out .. code-block:: none a b c .. GENERATED FROM PYTHON SOURCE LINES 99-103 .. code-block:: default vals = ['a', 'c', 'b'] for val in sorted(vals): print(val) .. rst-class:: sphx-glr-script-out .. code-block:: none a b c .. GENERATED FROM PYTHON SOURCE LINES 104-108 .. code-block:: default vals = [1,5,3,10.0] for val in sorted(vals): print(val) .. rst-class:: sphx-glr-script-out .. code-block:: none 1 3 5 10.0 .. GENERATED FROM PYTHON SOURCE LINES 109-111 reversed =========== .. GENERATED FROM PYTHON SOURCE LINES 111-115 .. code-block:: default vals = ['a', 'b', 'c'] for val in reversed(vals): print(val) .. rst-class:: sphx-glr-script-out .. code-block:: none c b a .. GENERATED FROM PYTHON SOURCE LINES 116-118 enumerate ========== .. GENERATED FROM PYTHON SOURCE LINES 118-122 .. code-block:: default vals = ['a', 'b', 'c'] for idx, val in enumerate(vals): print(idx, val) .. rst-class:: sphx-glr-script-out .. code-block:: none 0 a 1 b 2 c .. GENERATED FROM PYTHON SOURCE LINES 123-133 **Question:** What will be the output of the following code? .. code-block:: python names = ['jamaludin', 'zaynaldin', 'nurullah shustari', 'kamil dehlavi', 'baqir sadr] years = ['1385', '1558', '1610', '1809', '1980'] for (idx,name), year in zip(enumerate(names), years): print(idx, name, year) .. GENERATED FROM PYTHON SOURCE LINES 135-145 **Question:** Consider the following list .. code-block:: python dob_years = ['1334', '1506', '1542', '1700s', '1935'] Now modify the ``for`` loop in the previous example to also iterate over ``dob_years`` list along with ``names`` and ``years``. .. GENERATED FROM PYTHON SOURCE LINES 147-150 map ===== Suppose we have function which takes an input and returns square of it .. GENERATED FROM PYTHON SOURCE LINES 150-154 .. code-block:: default def square(x): return x**2 .. GENERATED FROM PYTHON SOURCE LINES 155-157 Now if we want to call this function on several values, we can make a list of all the values on which we want to call it .. GENERATED FROM PYTHON SOURCE LINES 157-159 .. code-block:: default vals = [1,2,3,4,5] .. GENERATED FROM PYTHON SOURCE LINES 160-161 and then we can call this function in a loss .. GENERATED FROM PYTHON SOURCE LINES 161-164 .. code-block:: default for val in vals: print(square(val)) .. rst-class:: sphx-glr-script-out .. code-block:: none 1 4 9 16 25 .. GENERATED FROM PYTHON SOURCE LINES 165-167 An alternative to calling the function in an explicit for loop is to make use of ``map`` function. .. GENERATED FROM PYTHON SOURCE LINES 167-170 .. code-block:: default mapper = map(square, vals) .. GENERATED FROM PYTHON SOURCE LINES 171-172 The ``map`` function returns an iterator which we can be converted into a ``list`` .. GENERATED FROM PYTHON SOURCE LINES 172-175 .. code-block:: default print(type(mapper)) .. rst-class:: sphx-glr-script-out .. code-block:: none .. GENERATED FROM PYTHON SOURCE LINES 176-180 .. code-block:: default from collections.abc import Iterator print(isinstance(mapper, Iterator)) .. rst-class:: sphx-glr-script-out .. code-block:: none True .. GENERATED FROM PYTHON SOURCE LINES 181-182 We can extract all values from iterator by calling ``list`` method on it. .. GENERATED FROM PYTHON SOURCE LINES 182-185 .. code-block:: default list(mapper) .. rst-class:: sphx-glr-script-out .. code-block:: none [1, 4, 9, 16, 25] .. GENERATED FROM PYTHON SOURCE LINES 186-187 we can also provide any builtin function as first argument to ``map`` .. GENERATED FROM PYTHON SOURCE LINES 187-190 .. code-block:: default list(map(float, vals)) .. rst-class:: sphx-glr-script-out .. code-block:: none [1.0, 2.0, 3.0, 4.0, 5.0] .. GENERATED FROM PYTHON SOURCE LINES 191-192 we can also use map with functions which take multiple input input arguments. .. GENERATED FROM PYTHON SOURCE LINES 192-200 .. code-block:: default def power(x, n): return x**n vals1 = [1,2,3,4] vals2 = [1,2,3,4] list(map(power, vals1, vals2)) .. rst-class:: sphx-glr-script-out .. code-block:: none [1, 4, 27, 256] .. GENERATED FROM PYTHON SOURCE LINES 201-204 Map has several advantages over an explicit for loop e.g * It is fast since it is written in C * It is memory efficient as it returns an iterator .. GENERATED FROM PYTHON SOURCE LINES 206-213 **Question:** Convert the years in following list from Hijri to Gregorian [1]_ calenden using ``map`` function .. code-block:: python hijri_years = [40, 50, 61, 95, 114, 148, 183, 203, 220, 254, 260] .. GENERATED FROM PYTHON SOURCE LINES 216-216 .. [1] ``_ .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 0.010 seconds) .. _sphx_glr_download_auto_examples_basics_keywords.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: binder-badge .. image:: images/binder_badge_logo.svg :target: https://mybinder.org/v2/gh/AtrCheema/python-seekho/master?urlpath=lab/tree/notebooks/auto_examples/basics/keywords.ipynb :alt: Launch binder :width: 150 px .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: keywords.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: keywords.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_