2016-12-01 4 views
1

ich auf this site gelesen, dass während Elemente in eine Liste angehängt, sagen L, obwohl die Ansätze:ein Element zu einer Python-Liste hinzufügen/Anfügen

L + [42] 

und

L.append(42)   

das gleiche Ergebnis , der erste Ansatz ist nicht der gleiche wie der zweite und auch, dass der erste Ansatz niemals verwendet werden sollte. Wieso ist es so?

+1

* "Wir können sehen, dass der Operator" + "etwa 1268 langsamer ist als die Append-Methode" * - von der Seite, die Sie verknüpft haben. Es bietet auch eine schöne Erklärung für den Unterschied. – vaultah

Antwort

5

L + [42] erzeugt eine neue Liste, L.append(42) die Liste modifiziert wird oft benötigt L.

In der Praxis Modifizieren, also, während es möglich ist, so etwas wie L = L + [42] für eine neue Liste zu tun, erzeugt und an die Variable platziert werden L (es ist, als würde man ein Bild kopieren, das in einem Rahmen sitzt, die Kopie modifizieren und in den gleichen Rahmen setzen, das Originalbild zerstören), L.append(42) ist viel effizienter (wie das Bild direkt ändern).

-1

Sie können auch eine Liste erweitern die erweitern mit Befehl:

a = [1 ,2, 3] 
b = [4, 5] 
a.extend(b) 

ein sein wird [1, 2, 3, 4, 5] und b bleibt gleich.

+0

Warum der Downvote? – daniboy000

+0

Einige Leute haben Antworten abgelehnt, von denen sie denken, dass sie die Frage nicht beantworten. – vaultah

Verwandte Themen