Loops
Python ↔ Baobab
10 correspondences
pour…dans for for…in, tantque for while. enumerer() and zip() cover enumerate() and zip(), casser/continuer cover break/continue.
| Python | Baobab | Description |
|---|---|---|
| for i in range(n): | pour i dans intervalle(n): | Counted loop from 0 to n-1. |
| range(debut, fin, pas) | intervalle(debut, fin, pas) | Start, exclusive end and step — like range. |
| for x in liste: | pour x dans liste: | Iterate directly over items. |
| for i, x in enumerate(l): | pour i, x dans enumerer(l): | Item and its index at the same time. |
| for a, b in zip(l1, l2): | pour a, b dans zip(l1, l2): | Iterate over two sequences in parallel. |
| for k, v in d.items(): | pour k, v dans d.elements(): | Iterate over a dictionary's pairs. |
| while cond: | tantque cond: | Repeat while the condition holds. |
| break / continue | casser / continuer | Exit the loop / skip an iteration. |
| for x in reversed(l): | pour x dans inverse(l): | Iterate in reverse order. |
| for x in sorted(l): | pour x dans trie(l): | Iterate in sorted order without mutating l. |
Complete example — Baobab ↔ Python
Baobab
1234567891011121314151617181920# intervalle avec départ, fin et pas
pour i dans intervalle(0, 10, 2):
afficher(i) # → 0 2 4 6 8
prenoms = ["Amina", "Kofi", "Fatou"]
pour i, prenom dans enumerer(prenoms):
afficher(f"{i + 1}. {prenom}")
notes = [15, 12, 18]
pour prenom, note dans zip(prenoms, notes):
afficher(f"{prenom} a eu {note}")
n = 3
tantque n > 0:
afficher(f"Compte à rebours : {n}")
n -= 1
pour x dans intervalle(100):
si x == 3:
casser # sort à 3Python
1234567891011121314151617181920# range with start, end and step
for i in range(0, 10, 2):
print(i) # → 0 2 4 6 8
prenoms = ["Amina", "Kofi", "Fatou"]
for i, prenom in enumerate(prenoms):
print(f"{i + 1}. {prenom}")
notes = [15, 12, 18]
for prenom, note in zip(prenoms, notes):
print(f"{prenom} a eu {note}")
n = 3
while n > 0:
print(f"Compte à rebours : {n}")
n -= 1
for x in range(100):
if x == 3:
break # exits at 3