[Exercice] Incompréhension listes
Bonjour à tous,
Souhaitant prendre en main le Python, je suis en train de me pencher sur le livre "Apprendre à programmer avec Python 3" de Gérard Swinnen déposé ici sur la rubrique.
Je suis sur cet exercice :
.Soient les listes suivantes :
Code:
1 2 3
| t1 = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
t2 = [ ' Janvier ' , ' Février ' , ' Mars ' , ' Avril ' , ' Mai ' , ' Juin ' ,
' Juillet ' , ' Août ' , ' Septembre ' , 'Octobre ' , ' Novembre ' , ' Décembre ' ] |
Écrivez un petit programme qui crée une nouvelle liste t3. Celle-ci devra contenir tous les éléments des deux listes en les alternant, de telle manière que chaque nom de mois soit suivi du nombre de jours correspondant :
[ ' Janvier ' ,31, ' Février ' ,28, ' Mars ' ,31, etc...].
J'ai d'abord écrit un programme jouant sur les indices d'une nouvelle liste t3.
Apparemment, en Python, on ne peut pas écrire à l'indice 0 d'une liste initialisée vide.
J'ai donc transformé mon code avec la méthode append().
J'obtiens ce code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| t1 = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
t2 = [ ' Janvier ' , ' Février ' , ' Mars ' , ' Avril ' , ' Mai ' , ' Juin ' ,
' Juillet ' , ' Août ' , ' Septembre ' , 'Octobre ' , ' Novembre ' , ' Décembre ' ]
i = 0
t3 = []
for i in range(0,12):
t3.append(t2[i])
t3.append(t1[i])
print(t3) |
Mon incompréhension vient de range(0,12).
Si j'écris range(0,11), je n'ai pas Décembre, 31 dans la liste t3.
Or les listes t1 et t2 font une len de 12 (index 0 à 11).
Pouvez-vous m'aider à comprendre ce point ?
Merci.