

{"id":7258,"date":"2018-02-05T10:28:57","date_gmt":"2018-02-05T04:58:57","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=7258"},"modified":"2025-07-23T17:54:20","modified_gmt":"2025-07-23T12:24:20","slug":"python-itertools","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/python-itertools\/","title":{"rendered":"Learn Python Itertools and Python Iterables with Examples"},"content":{"rendered":"<p>All the constructs of <a href=\"https:\/\/data-flair.training\/blogs\/python-tutorial-for-beginners\/\"><strong>Python programming<\/strong><\/a>, all the syntactic sugar. These are just a few good things about Python. We\u2019ve talked earlier of <strong><a href=\"https:\/\/data-flair.training\/blogs\/python-iterator\/\">Iterators<\/a><\/strong>, <strong><a href=\"https:\/\/data-flair.training\/blogs\/python-generators\/\">Generators<\/a><\/strong>, and also a <strong><a href=\"https:\/\/data-flair.training\/blogs\/python-generator-vs-iterator\/\">comparison of them<\/a><\/strong>. Today, we will talk about Python iterables, examples of iterables in python, Python Itertools, and functions offered by Itertools in python.<\/p>\n<p>So, let&#8217;s start exploring Iterables &amp; Itertools in Python Programming Langauge.<\/p>\n<h3>What is Python Iterables?<\/h3>\n<p>An iterable is any object you can loop over with for. It only needs to supply the __iter__() method that returns an iterator. All built-in sequences\u2014lists, tuples, strings\u2014as well as file objects, dict keys views, and even open network sockets qualify.<\/p>\n<p>To check what happens internally in an iterator, we\u2019re going to use the \u2018dis\u2019 module to disassemble the code. Once we import it, we call the dis() function. Before Preferring the example, let&#8217;s see<a href=\"https:\/\/data-flair.training\/blogs\/python-syntax-semantics\/\"> <strong>python Syntax<\/strong><\/a>.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; import dis\r\n&gt;&gt;&gt; dis.dis('for _ in [1,2,3]:pass')<\/pre>\n<p>1\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 0 SETUP_LOOP\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a012 (to 14)<\/p>\n<p>2\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 LOAD_CONST 4 ((1, 2, 3))<\/p>\n<p>4\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 GET_ITER<\/p>\n<p>&gt;&gt;\u00a0 \u00a06 FOR_ITER\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 4 (to 12)<\/p>\n<p>8 STORE_NAME\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 0 (_)<\/p>\n<p>10 JUMP_ABSOLUTE\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 6<\/p>\n<p>&gt;&gt; 12 POP_BLOCK<\/p>\n<p>&gt;&gt; 14 LOAD_CONST\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 3 (None)<\/p>\n<p>16 RETURN_VALUE<\/p>\n<p>Here, GET_ITER is like invoking iter(). Likewise, FOR_ITER is to repeatedly call next() to get each element.<\/p>\n<h3>Example of Python Iterables<\/h3>\n<p>Okay, so let\u2019s take an example before we begin.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; nums=[1,2,3]\r\n&gt;&gt;&gt; number=iter(nums)\r\n&gt;&gt;&gt; next(number)<\/pre>\n<p>1<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; next(number)<\/pre>\n<p>2<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; next(number)<\/pre>\n<p>3<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; next(number)<\/pre>\n<p>Traceback (most recent call last):<\/p>\n<p>File &#8220;&lt;pyshell#224&gt;&#8221;, line 1, in &lt;module&gt;<\/p>\n<p>next(number)<\/p>\n<p>StopIteration<\/p>\n<p>In this code, \u2018nums\u2019 is a python iterables. Using the function iter(), we create an iterator \u2018number\u2019. This relationship can be inferred from the following representation.<\/p>\n<div id=\"attachment_7290\" style=\"width: 1090px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/iterable-vs-iterator.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7290\" class=\"wp-image-7290 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/iterable-vs-iterator.jpg\" alt=\"An Example of Java Iterables\" width=\"1080\" height=\"322\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/iterable-vs-iterator.jpg 1080w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/iterable-vs-iterator-150x45.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/iterable-vs-iterator-300x89.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/iterable-vs-iterator-768x229.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/iterable-vs-iterator-1024x305.jpg 1024w\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" \/><\/a><p id=\"caption-attachment-7290\" class=\"wp-caption-text\">An Example of Java Iterables<\/p><\/div>\n<p>An iterables in python has the methods __len__() and __getitem__()<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; a=[1,2,3]\r\n&gt;&gt;&gt; dir(a)<\/pre>\n<p>[&#8216;__add__&#8217;, &#8216;__class__&#8217;, &#8216;__contains__&#8217;, &#8216;__delattr__&#8217;, &#8216;__delitem__&#8217;, &#8216;__dir__&#8217;, &#8216;__doc__&#8217;, &#8216;__eq__&#8217;, &#8216;__format__&#8217;, &#8216;__ge__&#8217;, &#8216;__getattribute__&#8217;, &#8216;__getitem__&#8217;, &#8216;__gt__&#8217;, &#8216;__hash__&#8217;, &#8216;__iadd__&#8217;, &#8216;__imul__&#8217;, &#8216;__init__&#8217;, &#8216;__init_subclass__&#8217;, &#8216;__iter__&#8217;, &#8216;__le__&#8217;, &#8216;__len__&#8217;, &#8216;__lt__&#8217;, &#8216;__mul__&#8217;, &#8216;__ne__&#8217;, &#8216;__new__&#8217;, &#8216;__reduce__&#8217;, &#8216;__reduce_ex__&#8217;, &#8216;__repr__&#8217;, &#8216;__reversed__&#8217;, &#8216;__rmul__&#8217;, &#8216;__setattr__&#8217;, &#8216;__setitem__&#8217;, &#8216;__sizeof__&#8217;, &#8216;__str__&#8217;, &#8216;__subclasshook__&#8217;, &#8216;append&#8217;, &#8216;clear&#8217;, &#8216;copy&#8217;, &#8216;count&#8217;, &#8216;extend&#8217;, &#8216;index&#8217;, &#8216;insert&#8217;, &#8216;pop&#8217;, &#8216;remove&#8217;, &#8216;reverse&#8217;, &#8216;sort&#8217;]<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; a.__len__()<\/pre>\n<p>3<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; a.__getitem__(2)<\/pre>\n<p>3<br \/>\nWhile __len__() returns the length of the python iterables, __getitem__() takes an index as an argument, and returns the value at that position in the iterable in python.<\/p>\n<h3>More Iterables in Python<\/h3>\n<p>Most containers are python iterables. Let\u2019s see some relationship using the<strong> <a href=\"https:\/\/data-flair.training\/blogs\/python-built-in-functions\/\">built-in function<\/a> <\/strong>issubclass().<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; import collections\r\n&gt;&gt;&gt; issubclass(collections.Iterator,collections.Iterable)<\/pre>\n<p>True<br \/>\n#This means an iterator is a python iterable.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.Iterable,collections.Iterator)<\/pre>\n<p>False<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.Generator,collections.Iterator)<\/pre>\n<p>True<br \/>\n#A generator is a Python iterator<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.Generator,collections.Iterable)<\/pre>\n<p>True<\/p>\n<p>#So, a generator is also an iterable in python<\/p>\n<p>Let\u2019s check for some more constructs.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.Set,collections.Iterable)<\/pre>\n<p>True<\/p>\n<p>#A set is a python iterable<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.UserDict,collections.Iterable)<\/pre>\n<p>True<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.deque,collections.Iterable)<\/pre>\n<p>True<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.deque,collections.Iterable)<\/pre>\n<p>True<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.defaultdict,collections.Iterable)<\/pre>\n<p>True<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; issubclass(collections.OrderedDict,collections.Iterable)<\/pre>\n<p>True<\/p>\n<p>When we say that an iterator is a python iterable, we mean it. In the following code, we define an iterator, and then call the iter() function on it.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; a=iter([1,2,3])\r\n&gt;&gt;&gt; b=iter(a)\r\n&gt;&gt;&gt; b<\/pre>\n<p>&lt;list_iterator object at 0x0328BCB0&gt;<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&gt;&gt;&gt; a<\/pre>\n<p>&lt;list_iterator object at 0x0328BCB0&gt;<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&gt;&gt;&gt; next(b)<\/pre>\n<p>1<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; next(a)<\/pre>\n<p>2<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; next(b)<\/pre>\n<p>3<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; next(a)<\/pre>\n<p>Traceback (most recent call last):<\/p>\n<p>File &#8220;&lt;pyshell#242&gt;&#8221;, line 1, in &lt;module&gt;<\/p>\n<p>next(a)<\/p>\n<p>StopIteration<\/p>\n<p>What we get back is a python iterator. Hence, an iterator is python iterable. In this code, hence, b and a reference to the same iterator. Thus, when we call next() on either one, the state is changed for both.<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/reasons-why-should-i-learn-python\/\"><strong>Why should you learn Python?\u00a0<\/strong><\/a><\/p>\n<h3 style=\"text-align: left\">Python Itertools<\/h3>\n<p>Python itertools is a module we can use as a standard library for functional programming. We\u2019ll see some of the functions it offers. First, let\u2019s talk about count().<\/p>\n<div id=\"attachment_7271\" style=\"width: 1090px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7271\" class=\"wp-image-7271 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01.jpg\" alt=\"Python Iterables- Functions of Python Iteratools\" width=\"1080\" height=\"1080\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01.jpg 1080w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01-150x150.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01-300x300.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01-768x768.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01-1024x1024.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-itertools-01-100x100.jpg 100w\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" \/><\/a><p id=\"caption-attachment-7271\" class=\"wp-caption-text\">Python Iterables- Functions of Python Iteratools<\/p><\/div>\n<h4>a. count() in Python Itertools<\/h4>\n<p>The function count() in python Itertools takes, as an argument, an integer number to begin count at. It then counts infinitely, unless we break out of the <a href=\"https:\/\/data-flair.training\/blogs\/loops-in-python\/\"><strong>for-loop<\/strong><\/a> using an <a href=\"https:\/\/data-flair.training\/blogs\/python-decision-making-expressions\/\"><strong>if-statement<\/strong><\/a>.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; from itertools import count\r\n&gt;&gt;&gt; for i in count(7):\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 if i&gt;14:\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 break\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print(i)<\/pre>\n<p>7<\/p>\n<p>8<\/p>\n<p>9<\/p>\n<p>10<\/p>\n<p>11<\/p>\n<p>12<\/p>\n<p>13<\/p>\n<p>14<\/p>\n<p>Let\u2019s try calling it without an argument and without a terminating if-condition.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; for i in count():\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print(i)<\/pre>\n<p>1<\/p>\n<p>2<\/p>\n<p>3<\/p>\n<p>4<\/p>\n<p>5<\/p>\n<p>6<\/p>\n<p>7<\/p>\n<p>8<\/p>\n<p>9<\/p>\n<p>10<\/p>\n<p>11<\/p>\n<p>12<\/p>\n<p>13<\/p>\n<p>14<\/p>\n<p>15<\/p>\n<p>16<\/p>\n<p>17<\/p>\n<p>18<\/p>\n<p>19<\/p>\n<p>20<\/p>\n<p>21<\/p>\n<p>22<\/p>\n<p>23<\/p>\n<p>24<\/p>\n<p>Traceback (most recent call last):<\/p>\n<p>File &#8220;&lt;pyshell#265&gt;&#8221;, line 2, in &lt;module&gt;<\/p>\n<p>print(i)<\/p>\n<p>KeyboardInterrupt<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&gt;&gt;&gt;<\/pre>\n<p>Here, we had to press Ctrl+C to interrupt this infinite iterator. We can also give it a positive\/ negative interval as a second argument.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; for i in count(2,2):\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 if i&gt;10: break\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print(i)\r\n<\/pre>\n<p>2<\/p>\n<p>4<\/p>\n<p>6<\/p>\n<p>8<\/p>\n<p>10<\/p>\n<p>Now, let\u2019s see another function.<\/p>\n<h4>b. cycle() in Python Itertool<\/h4>\n<p>Cycle() function in python itertools infinitely iterates over a python iterables, unless we explicitly break out of the loop.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; from itertools import cycle\r\n&gt;&gt;&gt; c=0\r\n&gt;&gt;&gt; for i in cycle(['red','blue']):\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 if c&gt;7:\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 break\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print(i)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 c+=1<\/pre>\n<p>red<\/p>\n<p>blue<\/p>\n<p>red<\/p>\n<p>blue<\/p>\n<p>red<\/p>\n<p>blue<\/p>\n<p>red<\/p>\n<p>blue<\/p>\n<h4>c. repeat() in Python Itertool<\/h4>\n<p>This one repeats an object infinitely unless explicitly broken out of.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; from itertools import repeat\r\n&gt;&gt;&gt; c=0\r\n&gt;&gt;&gt; for i in repeat([1,2,3]):\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 if c&gt;7:\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 break\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print(i)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 c+=1<\/pre>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>We can also specify the number of times we want it to repeat, as a second argument.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; for i in repeat([1,2,3],4):\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print(i)\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\r\n<\/pre>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>[1, 2, 3]<\/p>\n<p>So, this was all about Python Iterables and Itertools. Hope you like our explanation.<\/p>\n<h3>Conclusion<\/h3>\n<p>Now, we know that a Python iterables are an object that we can iterate on. Likewise, an iterator is a <a href=\"https:\/\/data-flair.training\/blogs\/python-object\/\"><strong>python object<\/strong> <\/a>that lets us iterate on an iterator. We also saw the relationships between various classes of a collection. Finally, we took a brief look at the module \u2018itertools\u2019.<\/p>\n<p>Still, have a confusion, feel free to approach us through the comment box!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>All the constructs of Python programming, all the syntactic sugar. These are just a few good things about Python. We\u2019ve talked earlier of Iterators, Generators, and also a comparison of them. Today, we will&#46;&#46;&#46;<\/p>\n","protected":false},"author":5,"featured_media":7270,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[46],"tags":[3010,3242,4321,6866,6985,7335,10621,10622,10623,10626,11536,15492],"class_list":["post-7258","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","tag-count","tag-cycle","tag-example-of-python-iterables","tag-interable-in-python","tag-introduction-of-python-iterables","tag-iterables-in-python","tag-python-iterable","tag-python-iterables","tag-python-iterables-examples","tag-python-itertools","tag-repeat","tag-what-are-python-iterables"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Learn Python Itertools and Python Iterables with Examples - DataFlair<\/title>\n<meta name=\"description\" content=\"Learn What is iterable in python with examples, Python Itertools, Function of Itertools in python: Cycle, count &amp; repeat Itertools in Python\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/python-itertools\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Learn Python Itertools and Python Iterables with Examples - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Learn What is iterable in python with examples, Python Itertools, Function of Itertools in python: Cycle, count &amp; repeat Itertools in Python\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/python-itertools\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-02-05T04:58:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-23T12:24:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-Iterables.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Learn Python Itertools and Python Iterables with Examples - DataFlair","description":"Learn What is iterable in python with examples, Python Itertools, Function of Itertools in python: Cycle, count & repeat Itertools in Python","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/python-itertools\/","og_locale":"en_US","og_type":"article","og_title":"Learn Python Itertools and Python Iterables with Examples - DataFlair","og_description":"Learn What is iterable in python with examples, Python Itertools, Function of Itertools in python: Cycle, count & repeat Itertools in Python","og_url":"https:\/\/data-flair.training\/blogs\/python-itertools\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-02-05T04:58:57+00:00","article_modified_time":"2025-07-23T12:24:20+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-Iterables.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823"},"headline":"Learn Python Itertools and Python Iterables with Examples","datePublished":"2018-02-05T04:58:57+00:00","dateModified":"2025-07-23T12:24:20+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/"},"wordCount":816,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-Iterables.jpg","keywords":["count","cycle","Example of Python Iterables","interable in python","Introduction of python iterables","iterables in python","python iterable","python iterables","Python Iterables examples","Python Itertools","repeat","what are python iterables"],"articleSection":["Python Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/python-itertools\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/","url":"https:\/\/data-flair.training\/blogs\/python-itertools\/","name":"Learn Python Itertools and Python Iterables with Examples - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-Iterables.jpg","datePublished":"2018-02-05T04:58:57+00:00","dateModified":"2025-07-23T12:24:20+00:00","description":"Learn What is iterable in python with examples, Python Itertools, Function of Itertools in python: Cycle, count & repeat Itertools in Python","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/python-itertools\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-Iterables.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Python-Iterables.jpg","width":1200,"height":628,"caption":"Introduction to Python Iterables"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/python-itertools\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Python Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/python\/"},{"@type":"ListItem","position":3,"name":"Learn Python Itertools and Python Iterables with Examples"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team creates expert-level guides on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our goal is to empower learners with easy-to-understand content. Explore our resources for career growth and practical learning.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam1\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7258","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=7258"}],"version-history":[{"count":7,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7258\/revisions"}],"predecessor-version":[{"id":147756,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7258\/revisions\/147756"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/7270"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=7258"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=7258"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=7258"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}