Elementtien lisääminen luetteloon (array) Pythonissa: append(), extend() ja insert()

liiketoiminta

Voit lisätä elementin listatyyppiseen listaan (array) Pythonissa tai yhdistää toisen listan käyttämällä listametodeja append(), extend() ja insert(). Voit myös käyttää +-operaattoria tai viipaletta paikan määrittämiseen ja sen osoittamiseen.

Seuraavat tiedot annetaan tässä.

  • Lisää elementtejä loppuun:append()
  • Toisen listan tai tuplen yhdistäminen loppuun (ketjuttaminen): extend(),+operaattori
  • Lisää (insert) elementti määritettyyn paikkaan.:insert()
  • Lisää (insert) toinen lista tai tuple määritettyyn paikkaan.:viipale

Lisää elementtejä loppuun: append()

Listan append()-metodilla voit lisätä elementtejä loppuun (viimeiseksi). Jos haluat lisätä elementin johonkin muuhun kuin loppuun, esimerkiksi alkuun, käytä insert()-menetelmää, kuten alla on kuvattu.

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']

Luettelot lisätään myös yksittäisinä elementteinä. Niitä ei yhdistetä.

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

Toisen listan tai tuplen yhdistäminen loppuun (ketjuttaminen): extend(), +operaattori

Listametodilla extend() voit yhdistää toisen listan tai tuplen loppuun (loppuun). Kaikki elementit liitetään alkuperäisen listan loppuun.

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]

Huomaa, että jokainen merkki (elementti) lisätään merkkijonoon merkki kerrallaan.

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

On myös mahdollista ketjuttaa käyttämällä +-operaattoria extend()-menetelmän sijasta.

+-operaattorilla, palautetaan uusi lista.+=Näin voit myös lisätä sen olemassa olevaan luetteloon.

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]

Lisää (insert) elementti määritettyyn paikkaan.: insert()

Listan metodilla insert() voidaan lisätä (lisätä) elementti määritettyyn paikkaan.

Ensimmäinen argumentti määrittää paikan ja toinen argumentti määrittää lisättävän elementin. Ensimmäinen (alku)sijainti on 0; negatiivisille arvoille -1 on viimeinen (loppu)sijainti.

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]

Kuten append()-toiminnossa, lista lisätään yhtenä elementtinä. Sitä ei yhdistetä.

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

Huomaa, että insert() ei ole tehokas toiminto, koska se vaatii seuraavat kustannukset. Katso eri listaoperaatioiden laskennallinen monimutkaisuus virallisesta wikistä seuraavalta sivulta.
O(n)

O(1)
Standardikirjaston collections-moduulissa on deque-tyyppi, jonka avulla voidaan lisätä elementtejä alkuun tällä kustannuksella. Jos esimerkiksi haluat käsitellä dataa jonona (FIFO), on tehokkaampaa käyttää deque-tyyppiä.

Lisää (insert) toinen lista tai tuple määritettyyn paikkaan.: viipale

Jos määrität alueen viipaleella ja annat toisen listan tai tuplen, kaikki elementit lisätään (lisätään).

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

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

Voit myös korvata alkuperäisen elementin. Kaikki elementit määritetyllä alueella korvataan.

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

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