Was ist der Unterschied zwischen den Python's Liste Methoden anhängen und erweitern?

Was ist der Unterschied zwischen den Listenmethoden append() und extend()?

Lösung

Anhängen: Hängt das Objekt am Ende an.

x = [1, 2, 3]
x.append([4, 5])
print (x)

gibt Ihnen: [1, 2, 3, [4, 5]]


erweitern: Erweitert die Liste durch Anhängen von Elementen aus der Iterable.

x = [1, 2, 3]
x.extend([4, 5])
print (x)

ergibt: [1, 2, 3, 4, 5]

Kommentare (5)

append fügt ein Element zu einer Liste hinzu, und extend verkettet die erste Liste mit einer anderen Liste (oder einer anderen Iterablen, die nicht unbedingt eine Liste ist).

>>> li = ['a', 'b', 'mpilgrim', 'z', 'example']
>>> li
['a', 'b', 'mpilgrim', 'z', 'example']

>>> li.append("new")
>>> li
['a', 'b', 'mpilgrim', 'z', 'example', 'new']

>>> li.append(["new", 2])
>>> li
['a', 'b', 'mpilgrim', 'z', 'example', 'new', ['new', 2]]

>>> li.insert(2, "new")
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', ['new', 2]]

>>> li.extend(["two", "elements"])
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', ['new', 2], 'two', 'elements']
Kommentare (0)

append fügt ein einzelnes Element an. extend" fügt eine Liste von Elementen an.

Beachten Sie, dass, wenn Sie eine Liste zum Anhängen übergeben, es immer noch ein Element hinzufügt:

>>> a = [1, 2, 3]
>>> a.append([4, 5, 6])
>>> a
[1, 2, 3, [4, 5, 6]]
Kommentare (0)