__ Les lignes (n1) et colonnes (n2) sont entrées dans la première ligne et n2 colonnes. Ou # sont entrées dans la deuxième ligne et les suivantes. Stockez les chaînes de caractères sur la deuxième ligne et les suivantes n1 dans un tableau à deux dimensions. __
Donnez les données d'entrée suivantes à titre d'exemple
3 5
#####
.#.#.
#.#.#
#Entrez les lignes et les colonnes du tableau à créer séparées par des espaces
in1 = input()
arr1=in1.split()
#À côté de arr1 spécifié ci-dessus[1]La chaîne de caractères de la colonne est arr1[0]Lire le texte de la ligne
in2=[]
for i in range(int(arr1[0])):
tmp1=input()
in2.append(tmp1)
#Le tableau à deux dimensions suivant(arr1[0]Ligne arr1[1]Colonne)Créer
arr2=[[''] * int(arr1[1]) for i in range(int(arr1[0]))]
arr3=[['']*int(arr1[1])]*int(arr1[0])
#Afficher le tableau bidimensionnel défini ci-dessus
print(arr2)
print(arr3)
for i in range(int(arr1[0])):
tmp2=in2[i]
for j in range(int(arr1[1])):
arr2[i][j]=tmp2[j:j+1]
arr3[i][j]=tmp2[j:j+1]
print(arr2)
print(arr3)
[['', '', '', '', ''], ['', '', '', '', ''], ['', '', '', '', '']]
[['', '', '', '', ''], ['', '', '', '', ''], ['', '', '', '', '']]
[['#', '#', '#', '#', '#'], ['.', '#', '.', '#', '.'], ['#', '.', '#', '.', '#']]
[['#', '.', '#', '.', '#'], ['#', '.', '#', '.', '#'], ['#', '.', '#', '.', '#']]
Dans les première et deuxième lignes, les données de tableau bidimensionnelles initialisées sont affichées. Ce à quoi nous faisons attention, c'est la différence entre les résultats d'exécution des 3ème et 4ème lignes `__.
Les valeurs de tous les tableaux de arr3 ont été remplacées par les données de la dernière ligne d'entrée.
Reportez-vous à Initialiser la liste Python (tableau) avec une valeur arbitraire / nombre d'éléments Ajoutez le code suivant au code ci-dessus.
print(arr2[0]==arr2[int(arr1[0])-1])
print(arr3[0]==arr3[int(arr1[0])-1])
False
True
Parce que la liste des éléments dans arr3 sont tous traités comme le même objet Il semble que lorsqu'une liste est mise à jour, les autres listes sont mises à jour avec le même contenu.
Lors de la déclaration d'un tableau à deux dimensions avec des valeurs initiales
Nom de la liste = [[Valeur initiale] * Nombre de colonnes pour la variable arbitraire dans la plage (nombre de lignes)]
utilisation.
Recommended Posts