Heim > Artikel > Backend-Entwicklung > Wie unterscheiden sich die Operatoren „append()“ und „=“ von Python bei der Verwendung in Listen?
Unterschiede zwischen dem Python-Append()- und dem =-Operator bei Listen verstehen
Die append()-Methode und der =-Operator verhalten sich beim Bearbeiten unterschiedlich Listen. append() fügt das angegebene Element am Ende der Liste hinzu, während = die Elemente der Operandenliste mit der vorhandenen Liste verkettet.
Konsequenzen der Verwendung von =
Die Verwendung von = mit einer Liste als Operand führt zu einer neuen Liste, die die ursprüngliche Liste mit den Elementen der Operandenliste kombiniert. Zum Beispiel:
<code class="python">c = [1, 2, 3] c += c print(c) # [1, 2, 3, 1, 2, 3]</code>
Rekursion mit append()
Im Gegensatz dazu hängt append() die Liste selbst als einzelnes Element an, was zu einer unendlichen Rekursion führt, wenn Die Liste wird zu sich selbst hinzugefügt. Dies liegt daran, dass das letzte Element der Liste, auf das über c[-1] zugegriffen wird, nun auf die Liste selbst verweist und eine rekursive Schleife erzeugt.
<code class="python">c = [1, 2, 3] c.append(c) print(c) # [1, 2, 3, [...]] # infinite recursion</code>
Alternative Option: extension()
Um die Elemente einer Liste an eine andere anzuhängen, verwenden Sie die Methode „extend()“. Es ändert die ursprüngliche Liste direkt, im Gegensatz zu =, das eine neue Liste erstellt:
<code class="python">c = [1, 2, 3] c.extend(c) print(c) # [1, 2, 3, 1, 2, 3]</code>
Das obige ist der detaillierte Inhalt vonWie unterscheiden sich die Operatoren „append()“ und „=“ von Python bei der Verwendung in Listen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!