Python Built-in Functions: range, reversed, iter, and next – Usage and Best Practices
This article explains Python's built-in functions range, reversed, iter, and next, detailing their syntax, parameters, code examples, and best‑practice tips for effective iteration and sequence handling.
range([start,] stop[, step]) generates an integer sequence and is commonly used with for loops. It accepts up to three arguments: start (default 0), stop (exclusive), and step (default 1).
range(stop)
range(start, stop[, step])Examples:
# Single argument: 0 to 5 (exclusive)
for i in range(5):
print(i) # 0, 1, 2, 3, 4
# Two arguments: 1 to 5 (exclusive)
for i in range(1, 5):
print(i) # 1, 2, 3, 4
# Three arguments: 0 to 10 (exclusive) step 2
for i in range(0, 10, 2):
print(i) # 0, 2, 4, 6, 8reversed(seq) returns a reverse iterator, allowing traversal of a sequence in opposite order without modifying the original.
reversed(sequence)Examples:
my_list = [1, 2, 3, 4]
for item in reversed(my_list):
print(item) # 4, 3, 2, 1
my_string = "hello"
for char in reversed(my_string):
print(char) # o, l, l, e, hiter(obj[, sentinel]) creates an iterator from an iterable object or from a callable with a sentinel value.
iter(object)
iter(callable, sentinel)Example:
my_list = ['a', 'b', 'c']
iterator = iter(my_list)
print(next(iterator)) # a
print(next(iterator)) # b
print(next(iterator)) # c
# Next call raises StopIterationnext(iterator[, default]) retrieves the next item from an iterator, optionally returning a default value instead of raising StopIteration when the iterator is exhausted.
next(iterator)
next(iterator, default)Example:
my_list = ['x', 'y', 'z']
iterator = iter(my_list)
print(next(iterator)) # x
print(next(iterator)) # y
print(next(iterator)) # z
print(next(iterator, 'no more items')) # no more itemsBest Practices and Tips
Use range() for clear index‑controlled loops instead of manual counters.
Employ reversed() to iterate backwards without altering the original sequence.
Combine iter() and next() for custom iteration, especially with infinite streams or event‑driven data sources.
Handle potential StopIteration gracefully by providing a default value to next() or catching the exception.
Test Development Learning Exchange
Test Development Learning Exchange
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.