Loops can be nested in Python, as they can with other programming languages. We will find certain situations that require nested loops.

Suppose we are in charge of a science class, that is split into three project teams:

project_teams = [["Ava", "Samantha", "James"], ["Lucille", "Zed"], ["Edgar", "Gabriel"]]

Using a for or while loop can be useful here to get each team:

for team in project_teams: print(team)

Would output:

["Ava", "Samantha", "James"] ["Lucille", "Zed"] ["Edgar", "Gabriel"]

But what if we wanted to print each individual student? In this case, we would actually need to nest our loops to be able to loop through each sub-list. Here is what it would look like:

# Loop through each sublist for team in project_teams: # Loop elements in each sublist for student in team: print(student)

This would output:

Ava Samantha James Lucille Zed Edgar Gabriel

Let’s practice writing a nested loop!



We have provided the list sales_data that shows the number of scoops sold for different flavors of ice cream at three different locations: Scoopcademy, Gilberts Creamery, and Manny’s Scoop Shop.

We want to sum up the total number of scoops sold across all three locations. Start by defining a variable scoops_sold and set it to zero.


Loop through the sales_data list using the following guidelines:

  1. For our temporary variable of the for loop, call it location.
  2. print() out each location list.

Within our sales_data loop, nest a secondary loop to go through each location sublist element and add the element value to scoops_sold.

By the end, you should have the sum of every number in the sales_data nested list.


Print out the value of scoops_sold outside of the nested loop.

Sign up to start coding

Mini Info Outline Icon
By signing up for Codecademy, you agree to Codecademy's Terms of Service & Privacy Policy.

Or sign up using:

Already have an account?