The Python itertools.count() function is used to create an iterator that generates an infinite sequence of numbers, starting from a specified value and incrementing by a given step. This function is commonly used for generating counters in loops or for creating sequences of numbers dynamically.
By default, the function starts from 0 and increments by 1 if no arguments are provided.
SyntaxFollowing is the syntax of the Python itertools.count() function −
itertools.count(start=0, step=1)Parameters
This function accepts the following parameters −
This function returns an iterator that produces an infinite sequence of numbers.
Example 1Following is an example of the Python itertools.count() function. Here, we are generating an infinite sequence of numbers starting from 5 −
import itertools counter = itertools.count(5) for _ in range(5): print(next(counter))
Following is the output of the above code −
5 6 7 8 9Example 2
Here, we specify a step value of 2, generating an arithmetic sequence with a difference of 2 between each value −
import itertools counter = itertools.count(10, 2) for _ in range(5): print(next(counter))
Output of the above code is as follows −
10 12 14 16 18Example 3
Now, we use the itertools.count() function with a floating-point step value to generate a sequence of decimal numbers −
import itertools counter = itertools.count(1.5, 0.5) for _ in range(5): print(next(counter))
The result obtained is as shown below −
1.5 2.0 2.5 3.0 3.5Example 4
If you use the itertools.count() function without limiting its iteration, it will run indefinitely. To prevent infinite loops, you can use conditions or the islice() function from itertools.
Here, we generate a sequence of numbers but limit it using itertools.islice() function −
import itertools counter = itertools.count(0, 3) limited_counter = itertools.islice(counter, 5) for num in limited_counter: print(num)
The result produced is as follows −
0 3 6 9 12
python_modules.htm
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4