A for loop is a special type of loop in Python which allows us to loop over the items of a collection, such as a string or a list.
Looping through a string:
For example, a string is a sequence of characters, so we can use a for loop to iterate over each character and do something with that character:
for letter in "Andy":
print(letter)
Let's break down this code:
for
keyword that indicates the start of a for
loop.letter
is the loop variable. It will take the value of each different item in the collectionin
keyword separates the loop variable from the collection we will iterate on"Andy"
is the collection to loop overThe output of this code is:
A
n
d
y
As you can see, on each iteration, letter
was assigned the value of the next item in the string and inside the loop, we printed that value.
Looping through a list:
We can also use for loops with lists:
fruits = ["banana", "orange", "pear", "kivi"]
for fruit in fruits:
print("I eat " + fruit)
The output of this code is:
I eat banana
I eat orange
I eat pear
I eat kivi
Assignment
Now let's greet our friends using a for loop!
Hint
Look at the examples above if you get stuck.
In this lesson, we will explore the concept of for loops in Python. For loops are a fundamental part of programming that allow us to iterate over a sequence of elements, such as strings, lists, tuples, and more. Understanding for loops is crucial for tasks that require repetitive actions, such as processing items in a list or characters in a string.
Before diving into more complex examples, let's understand the basic structure of a for loop in Python. A for loop consists of the for
keyword, a loop variable, the in
keyword, and the collection we want to iterate over. Here is a simple example:
for item in collection:
# Do something with item
In this structure, item
is the loop variable that takes on the value of each element in the collection
during each iteration of the loop.
Let's break down the key concepts and techniques involved in using for loops:
Here is an example of looping through a list of numbers and printing each number:
numbers = [1, 2, 3, 4, 5]
for number in numbers:
print(number)
Let's look at some practical examples of using for loops in different contexts:
for letter in "Hello":
print(letter)
This code will print each character in the string "Hello" on a new line.
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print("I like " + fruit)
This code will print a statement for each fruit in the list.
When using for loops, it's important to be aware of common mistakes and follow best practices:
For loops can be combined with other Python features to achieve more complex tasks. Here are a few advanced techniques:
enumerate()
to Get Index and Valuefruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
print(f"Index {index}: {fruit}")
The enumerate()
function allows you to loop through a collection and get both the index and the value of each element.
squares = [x**2 for x in range(10)]
print(squares)
List comprehensions provide a concise way to create lists using for loops in a single line of code.
Let's implement a for loop to greet a list of friends:
friends = ["Alice", "Bob", "Charlie"]
for friend in friends:
print(f"Hello, {friend}!")
This code will print a greeting for each friend in the list.
When working with for loops, debugging and testing are essential to ensure your code works as expected:
Here is an example of a simple test case:
def test_greet_friends():
friends = ["Alice", "Bob"]
greetings = []
for friend in friends:
greetings.append(f"Hello, {friend}!")
assert greetings == ["Hello, Alice!", "Hello, Bob!"]
test_greet_friends()
When approaching problems that involve for loops, consider the following strategies:
In this lesson, we covered the basics of for loops in Python, including their structure, key concepts, and practical examples. We also discussed common pitfalls, best practices, and advanced techniques. Mastering for loops is essential for writing efficient and readable code. Keep practicing and exploring different use cases to strengthen your understanding.
For further reading and practice, check out the following resources: