Nested loops & 2-D lists · Boucles imbriquées & listes 2-D
A loop inside a loop
- You can put one loop inside another loop.
- For every pass of the outer loop, the inner loop runs fully.
- So an outer of 2 and an inner of 3 runs the body 2 × 3 = 6 times.
Une boucle dans une boucle
- Vous pouvez placer une boucle à l'intérieur d'une autre boucle.
- Pour chaque passage de la boucle extérieure, la boucle intérieure s'exécute complètement.
- Donc une boucle extérieure de 2 et une intérieure de 3 exécutent le corps 2 × 3 = 6 fois.
for row in range(2):
for col in range(3):
print(row, col)
A list of lists
- A 2-D list is a list whose items are themselves lists.
- It models a grid or table: rows of columns.
- Reach one cell with two indexes:
grid[row][col].
Une liste de listes
- Une liste 2-D est une liste dont les éléments sont eux-mêmes des listes.
- Elle modélise une grille ou un tableau : des lignes de colonnes.
- Accédez à une case avec deux indices :
grid[row][col].
grid = [[1, 2], [3, 4]]
print(grid[0][1])
print(grid[1][0])
Loop over a grid
- Use a nested loop to visit every cell.
- The outer loop walks the rows; the inner loop walks the columns.
for row in grid:gives one row (a list) at a time.
Boucler sur une grille
- Utilisez une boucle imbriquée pour visiter chaque cellule.
- La boucle extérieure parcourt les lignes ; la boucle intérieure parcourt les colonnes.
for row in grid:renvoie une ligne (une liste) à la fois.
grid = [[1, 2], [3, 4]]
for row in grid:
for value in row:
print(value)
In Cambridge pseudocode
- A 2-D list is the exam's 2-D array, written
ARRAY[1:rows, 1:cols].
En pseudocode Cambridge
- Une liste 2D est le tableau 2D de l'examen, écrit
ARRAY[1:rows, 1:cols].
DECLARE grid : ARRAY[1:2, 1:3] OF INTEGER
FOR r ← 1 TO 2
FOR c ← 1 TO 3
OUTPUT grid[r, c]
NEXT c
NEXT r
Common mistakes
- The inner loop finishes all its turns for each single turn of the outer loop.
- Index a grid row first, then column:
grid[row][col].
Erreurs courantes
- La boucle intérieure termine toutes ses itérations pour chaque unique itération de la boucle extérieure.
- Indexez d'abord une ligne de grille, puis une colonne :
grid[row][col].
Now you try
- Use a nested loop in each task.
- Press Check answer to test your code.
À vous maintenant
- Utilisez une boucle imbriquée dans chaque tâche.
- Appuyez sur Vérifier la réponse pour tester votre code.
A 2-D list is a grid · Une liste 2-D est une grille
A 2-D list is rows of columns; reach a cell with grid[row][col]. · Une liste 2-D est des lignes de colonnes ; accédez à une cellule avec grid[row][col].
Use a nested loop to print a 3-by-3 square of stars: three lines, each with three * characters. · Utilisez une boucle imbriquée pour imprimer un carré d'étoiles de 3 sur 3 : trois lignes, chacune avec trois caractères *.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Add up every number in the 2-D list grid with a nested loop. Store the total in total (the answer is 21). · Additionnez tous les nombres de la liste 2-D grid avec une boucle imbriquée. Stockez le total dans total (la réponse est 21).
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Count how many cells in the 2-D list grid are equal to 0. Store the count in count (the answer is 3). · Comptez combien de cellules dans la liste 2-D grid sont égales à 0. Stockez le compteur dans count (la réponse est 3).
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.