PyData Careers
20.7K subscribers
197 photos
4 videos
26 files
342 links
Python Data Science jobs, interview tips, and career insights for aspiring professionals.
Download Telegram
In Python, for loops are versatile for iterating over iterables like lists, strings, or ranges, but advanced types include basic iteration, index-aware with enumerate(), parallel with zip(), nested for multi-level data, and comprehension-based—crucial for efficient data processing in interviews without overcomplicating.

# Basic for loop over iterable (list)
fruits = ["apple", "banana", "cherry"]
for fruit in fruits: # Iterates each element directly
print(fruit) # Output: apple \n banana \n cherry

# For loop with range() for numeric sequences
for i in range(3): # Generates 0, 1, 2 (start=0, stop=3, step=1)
print(i) # Output: 0 \n 1 \n 2

for i in range(1, 6, 2): # Start=1, stop=6, step=2
print(i) # Output: 1 \n 3 \n 5

# Index-aware with enumerate() (gets both index and value)
for index, fruit in enumerate(fruits, start=1): # start=1 for 1-based indexing
print(f"{index}: {fruit}") # Output: 1: apple \n 2: banana \n 3: cherry

# Parallel iteration with zip() (pairs multiple iterables)
names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages): # Stops at shortest iterable
print(f"{name} is {age} years old") # Output: Alice is 25 years old \n Bob is 30 years old \n Charlie is 35 years old

# Nested for loops (outer for rows, inner for columns; e.g., matrix)
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
for row in matrix: # Outer: each sublist
for num in row: # Inner: each element in row
print(num, end=' ') # Output: 1 2 3 4 5 6 7 8 9 (space-separated)

# For loop in list comprehension (concise iteration with optional condition)
squares = [x**2 for x in range(5)] # Basic comprehension
print(squares) # Output: [0, 1, 4, 9, 16]

evens_squared = [x**2 for x in range(10) if x % 2 == 0] # With condition (if)
print(evens_squared) # Output: [0, 4, 16, 36, 64]

# Nested comprehension (flattens 2D list)
flattened = [num for row in matrix for num in row] # Equivalent to nested for
print(flattened) # Output: [1, 2, 3, 4, 5, 6, 7, 8, 9]


#python #forloops #range #enumerate #zip #nestedloops #listcomprehension #interviewtips #iteration

👉 @DataScience4
3
🐍 Python Tip: Loop with Index using enumerate! 🐍

When you need to iterate through a sequence and also need the index of each item, enumerate() is your best friend! It's more "Pythonic" and cleaner than manually tracking an index.

enumerate() adds a counter to an iterable and returns it as an enumerate object. You can then unpack it directly in your for loop.

my_fruits = ["apple", "banana", "cherry", "date"]

Using enumerate() for a clean loop with index

print("--- Looping with default index ---")
for index, fruit in enumerate(my_fruits):
print(f"Fruit at index {index}: {fruit}")

You can also specify a starting index for the counter

print("\n--- Looping with custom start index (e.g., from 1) ---")
for count, fruit in enumerate(my_fruits, start=1):
print(f"Fruit number {count}: {fruit}")


Output:
--- Looping with default index ---
Fruit at index 0: apple
Fruit at index 1: banana
Fruit at index 2: cherry
Fruit at index 3: date

--- Looping with custom start index (e.g., from 1) ---
Fruit number 1: apple
Fruit number 2: banana
Fruit number 3: cherry
Fruit number 4: date


enumerate() makes your loops more readable and prevents common indexing errors. Give it a try!

#PythonTips #PythonProgramming #LearnPython #Enumerate #CodingHacks

---
By: @DataScienceQ