Prendiamo questo semplice codice:
def list(): elem = dict() lista = [] for x in range(3): elem['nome'] = x lista.append(elem) print lista list() Mi aspetterei come output: [{'nome': 0}, {'nome': 1}, {'nome': 2}] Quello che ottengo è invece: [{'nome': 2}, {'nome': 2}, {'nome': 2}] Se invece il ciclo lo scrivo così ("elem" lo dichiaro dentro il ciclo): def list(): lista = [] for x in range(3): elem = dict() elem['nome'] = x lista.append(elem) print lista list() ottengo l'output come previsto. Cosa succede nel primo caso? Viene modificato il dizionario messo nella lista? Perché? Grazie Walter _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python