Loops in Python
In this lab you'll practice writing loops — one of the most fundamental tools in programming. Loops let you repeat actions without writing the same code over and over.
Background
Python has two main types of loops:
for loops iterate over a sequence (like a range of numbers or characters in a string):
for i in range(5):
print(i)
while loops repeat as long as a condition is true:
count = 0
while count < 5:
print(count)
count += 1
Exercise 1: Counting Up
Write a program that prints the numbers from 1 to 10, each on its own line.
Expected output:
1
2
3
...
10
Solution:
for i in range(1, 11):
print(i)
Exercise 2: Sum of Numbers
Write a program that computes the sum of the numbers from 1 to 100 and prints the result.
Hint: Create a variable to hold the running total before the loop starts.
Expected output:
The sum is 5050
Solution:
total = 0
for i in range(1, 101):
total += i
print(f"The sum is {total}")
Exercise 3: Multiplication Table
Write a program that prints the multiplication table for a given number. Ask the user for a number, then print its multiples from 1 to 10.
Example output (if user enters 7):
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
...
7 x 10 = 70
Solution:
num = int(input("Enter a number: "))
for i in range(1, 11):
print(f"{num} x {i} = {num * i}")
Exercise 4: Input Validation
Write a program that keeps asking the user to enter a password until they type "secret123". When they get it right, print a welcome message. If they get it wrong, tell them to try again.
Example interaction:
Enter password: hello
Incorrect, try again.
Enter password: secret123
Welcome!
Solution:
password = input("Enter password: ")
while password != "secret123":
print("Incorrect, try again.")
password = input("Enter password: ")
print("Welcome!")
Exercise 5: Counting Characters
Write a program that asks the user for a word and a letter, then counts how many times that letter appears in the word.
Example output:
Enter a word: banana
Enter a letter: a
The letter 'a' appears 3 times in 'banana'
Solution:
word = input("Enter a word: ")
letter = input("Enter a letter: ")
count = 0
for char in word:
if char == letter:
count += 1
print(f"The letter '{letter}' appears {count} times in '{word}'")
Exercise 6: Number Guessing Game
Write a simple number guessing game. The secret number is 42. The program should:
- Ask the user to guess a number
- Tell them if their guess is too high or too low
- Keep looping until they guess correctly
- Count and display the number of attempts
Example interaction:
Guess a number: 25
Too low!
Guess a number: 50
Too high!
Guess a number: 42
Correct! You got it in 3 attempts.
Solution:
secret = 42
attempts = 0
guess = int(input("Guess a number: "))
attempts += 1
while guess != secret:
if guess < secret:
print("Too low!")
else:
print("Too high!")
guess = int(input("Guess a number: "))
attempts += 1
print(f"Correct! You got it in {attempts} attempts.")
Wrap-Up
You practiced:
forloops withrange()for counting and accumulatingforloops over strings for character processingwhileloops for input validation and game logic- The accumulator pattern (building up a result across iterations)
These patterns show up everywhere in programming. Next, try combining loops with lists and functions to solve bigger problems.