Possibile duplicato:
Python lista confusione
Ho una piccola domanda sugli elenchi di Python:
Perché succede?
x = [[]] * 4
x[0].append("x") -> [["x"], ["x"], ["x"], ["x"]]
risposte:
6 per risposta № 1la stessa istanza di []
viene duplicato, quindi quando si aggiunge al primo "x"
, in realtà lo aggiungi a tutti - perché sono tutti lo stesso oggetto!
Il modo giusto per farlo è creare ogni volta una nuova istanza di lista:
x = [[] for _ in range(4)]