Définition de tableaux bidimensionnels en Python sans longueur initialisée
Lorsque vous essayez de définir un tableau bidimensionnel en Python sans spécifier la longueur, tels que :
Matrix = [][]
vous pouvez rencontrer une erreur « IndexError : list index out of range ». Pour résoudre ce problème, il est nécessaire d'initialiser la liste externe avec des listes vides avant d'ajouter des éléments. Python utilise une technique appelée compréhension de liste à cet effet.
Considérez le code suivant :
w, h = 8, 5 Matrix = [[0 for x in range(w)] for y in range(h)]
Ici, nous avons créé une liste de 5 listes, chacune contenant 8 zéros. Maintenant, vous pouvez ajouter des éléments à ce tableau :
Matrix[0][0] = 1 Matrix[6][0] = 3 # error! out of range Matrix[0][6] = 3 # valid
Notez que la matrice est une adresse majeure "y", ce qui signifie que "l'index y" précède "l'index x". Par exemple :
print Matrix[0][0] # prints 1 x, y = 0, 6 print Matrix[x][y] # prints 3
Il est important d'être prudent lors de l'indexation et d'éviter d'utiliser le même nom de variable (par exemple, "x") pour les listes interne et externe lorsque vous travaillez avec des matrices non carrées.
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!