Dodavanje elemenata na popis (niz) u Pythonu: append(), extend(), insert()

Poslovanje

Za dodavanje elementa na popis (niz) popisa tipa u Pythonu ili za kombiniranje drugog popisa, koristite metode popisa append(), extend() i insert(). Također možete koristiti + operator ili odsječak da odredite poziciju i dodijelite je.

Ovdje su navedene sljedeće informacije.

  • Dodajte elemente na kraju:append()
  • Spajanje drugog popisa ili tuple na kraju (konkatenacija):extend(),+operater
  • Dodajte (umetnite) element na zadanu poziciju.:insert()
  • Dodajte (umetnite) drugi popis ili torku na navedenom mjestu:kriška

Dodajte elemente na kraju:append()

Koristeći metodu append() popisa, možete dodati elemente na kraj (posljednji). Ako ga želite dodati na poziciju koja nije kraj, kao što je vrh, koristite insert() kako je opisano u nastavku.

l = list(range(3))
print(l)
# [0, 1, 2]

l.append(100)
print(l)
# [0, 1, 2, 100]

l.append('new')
print(l)
# [0, 1, 2, 100, 'new']

Popisi se također dodaju kao jedan element. Nisu kombinirani.

l.append([3, 4, 5])
print(l)
# [0, 1, 2, 100, 'new', [3, 4, 5]]

Spajanje drugog popisa ili tuple na kraju (konkatenacija):extend(),+operater

S metodom liste extend(), možete kombinirati drugi popis ili tuple na kraju (kraju). Svi elementi bit će dodani na kraj izvornog popisa.

l = list(range(3))
print(l)
# [0, 1, 2]

l.extend([100, 101, 102])
print(l)
# [0, 1, 2, 100, 101, 102]

l.extend((-1, -2, -3))
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3]

Imajte na umu da se svaki znak (element) dodaje nizu jedan po jedan znak.

l.extend('new')
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w']

Također je moguće spojiti pomoću + operatora umjesto metode extend().

+ operator, vraća se novi popis.+=To će vam također omogućiti da ga dodate na postojeći popis.

l2 = l + [5, 6, 7]
print(l2)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w', 5, 6, 7]

l += [5, 6, 7]
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w', 5, 6, 7]

Dodajte (umetnite) element na zadanu poziciju.:insert()

Metoda liste insert() može dodati (umetnuti) element na određenom mjestu.

Prvi argument specificira poziciju, a drugi argument specificira element koji treba umetnuti. Prva (početna) pozicija je 0; za negativne vrijednosti, -1 je posljednja (konačna) pozicija.

l = list(range(3))
print(l)
# [0, 1, 2]

l.insert(0, 100)
print(l)
# [100, 0, 1, 2]

l.insert(-1, 200)
print(l)
# [100, 0, 1, 200, 2]

Kao i kod append(), popis se dodaje kao jedan element. Neće se spojiti.

l.insert(0, [-1, -2, -3])
print(l)
# [[-1, -2, -3], 100, 0, 1, 200, 2]

Imajte na umu da insert() nije učinkovita operacija jer zahtijeva sljedeće troškove. Pogledajte sljedeću stranicu na službenom wikiju za računsku složenost različitih operacija popisa.
O(n)

O(1)
Deque tip je osiguran u modulu zbirki standardnih knjižnica kao tip za dodavanje elemenata na vrh po ovoj cijeni. Na primjer, ako želite podatke tretirati kao red čekanja (FIFO), učinkovitije je koristiti deque.

Dodajte (umetnite) drugi popis ili torku na navedenom mjestu:kriška

Ako navedete raspon s isječkom i dodijelite drugi popis ili tuple, svi će se elementi dodati (umetnuti).

l = list(range(3))
print(l)
# [0, 1, 2]

l[1:1] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 1, 2]

Također možete zamijeniti izvorni element. Svi elementi u navedenom rasponu bit će zamijenjeni.

l = list(range(3))
print(l)
# [0, 1, 2]

l[1:2] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 2]