Maison >développement back-end >Tutoriel Python >Pourquoi l'affectation de liste échoue-t-elle avec IndexError en Python et comment puis-je ajouter correctement des éléments ?
Lorsque vous essayez de créer une liste en attribuant chaque élément individuellement, vous pouvez rencontrer une IndexError. Ce problème survient lorsque vous désignez des indices dans une liste vide qui n'existent pas encore.
Par exemple, considérez le code suivant :
i = [1, 2, 3, 5, 8, 13] j = [] k = 0 for l in i: j[k] = l k += 1
Lorsque vous exécutez ce code, vous allez obtenez une erreur "IndexError : index d'affectation de liste hors plage". Pour résoudre ce problème, vous devez utiliser la méthode append() pour ajouter des éléments à la fin de la liste :
for l in i: j.append(l)
Cependant, si vous désirez un comportement de type tableau, vous pouvez pré-remplir votre liste avec des valeurs None, puis les écraser à des indices spécifiques :
i = [1, 2, 3, 5, 8, 13] j = [None] * len(i) k = 0 for l in i: j[k] = l k += 1
En conclusion, les listes Python nécessitent des indices préexistants pour l'affectation et proposent la méthode append() pour une extension facile. Pour émuler un tableau, vous pouvez créer manuellement une liste avec des espaces réservés Aucun, puis attribuer des valeurs par index.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!