Probleme avec des listes dans des listes [Résolu]

Signaler
-
 Ethan -
Bonjour,

j'ai commencé a programmer et je voulais faire un tableau avec uniquement des points et remplacer une seule valeur de ce tableau par un "o" mais ca me remplace tout les points par des "o", voici mon code pour mieux comprendre :
liste =[["."]*3]*4
liste[1][1]="o"

for i in range(4):
for j in range(3):
print(liste[i][j],end="")
print()

1 réponse

Messages postés
30589
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
15 janvier 2021
7 228
Bonjour,

Une liste bidimensionnelle ne peut pas être créée simplement en répétant une chaîne.

voir https://snakify.org/fr/lessons/two_dimensional_lists_arrays/#section_2

n = 4
m = 3
liste = [""] * n
for i in range(n):
    liste[i] = ["."] * m
print(liste)
liste[1][1]="o"
print(liste)
for i in range(n):
    for j in range(m):
       print(liste[i][j],end="")
print() 


Pour la mise en forme des sources, au dessus de la zone d'édition de tes messages, il y a des icones pour les enrichissements du texte. Celle qui a cet aspect
<> ▼
permet d'appliquer aux codes, suivant une liste de valeurs, le format correspondant à sa nature.
Un petit tuto là : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code



Merci beaucoup, ça marche parfaitement !