Access the index of a for loop

David Y.
—The Problem
How do I access the index when iterating over a sequence inside a for loop?
The Solution
We can use Python’s built-in enumerate() function to do this. For each item in an iterable sequence such as a list, this function will return a tuple containing the item’s index and the item itself. Therefore, our code will look like this:
products = ["Apples", "Oranges", "Bananas"] for idx, product in enumerate(products): print(f"{idx}: {product}")
This code will produce the following output:
0: Apples 1: Oranges 2: Bananas
If we would prefer to start the index from 1 (or any other number), we can specify this using enumerate()’s start parameter, as below:
products = ["Apples", "Oranges", "Bananas"] for idx, product in enumerate(products, start=1): print(f"{idx}: {product}")
This will produce the following output:
1: Apples 2: Oranges 3: Bananas
The index can also be accessed without using the enumerate() function by iterating over the length of the iterable sequence as below:
products = ["Apples", "Oranges", "Bananas"] for idx in range(len(products)): print(f"{idx}: {products[idx]}")
This code will produce the following output:
0: Apples 1: Oranges 2: Bananas
- Sentry BlogPython Performance Testing: A Comprehensive Guide
- Syntax.fmListen to the Syntax Podcast
- Sentry BlogLogging in Python: A Developer’s Guide
- CodecovPython - Codecov
- Listen to the Syntax Podcast
![Syntax.fm logo]()
Tasty treats for web developers brought to you by Sentry. Get tips and tricks from Wes Bos and Scott Tolinski.
SEE EPISODES
Considered “not bad” by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.
