Python: Liste der Listen

Code ausführen

listoflists = []
list = []
for i in range(0,10):
    list.append(i)
    if len(list)>3:
        list.remove(list[0])
        listoflists.append((list, list[0]))
print listoflists

kehrt zurück

[([7, 8, 9], 0), ([7, 8, 9], 0), ([7, 8, 9], 0), ([7, 8, 9], 1), ([7, 8, 9], 2), ([7, 8, 9], 3), ([7, 8, 9], 4), ([7, 8, 9], 5), ([7, 8, 9], 6), ([7, 8, 9], 7)]

Das erste Argument jedes Tupels (jeder Liste) wird also jedes Mal in der Liste der Listen aktualisiert, das zweite Argument list [0] jedoch nicht. Kann jemand erklären, was hier vor sich geht, und einen Weg vorschlagen, dies zu beheben? Ich möchte ausgeben

[([0],0), ([0,1],0), ...

Antworten auf die Frage(7)

Ihre Antwort auf die Frage