Til að bæta staki við lista (fylki) af gerð lista í Python, eða til að sameina annan lista, notaðu listaaðferðirnar append(), extend() og insert(). Þú getur líka notað + aðgerðina eða sneið til að tilgreina staðsetningu og úthluta henni.
Eftirfarandi upplýsingar eru veittar hér.
- Bættu við þáttum í lokin:
append()
- Sameina annan lista eða tuple í lokin (samtenging):
extend()
,+
rekstraraðili - Bættu við (settu inn) staki á tilgreindri staðsetningu.:
insert()
- Bættu við (settu inn) öðrum lista eða tuple á tilgreindum stað:sneið
Bættu við þáttum í lokin:append()
Með því að nota append() aðferðina á listanum geturðu bætt þáttum við endann (síðast). Ef þú vilt bæta því við aðra stöðu en endann, eins og toppinn, notaðu insert() eins og lýst er hér að neðan.
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']
Listum er einnig bætt við sem einn þáttur. Þau eru ekki sameinuð.
l.append([3, 4, 5])
print(l)
# [0, 1, 2, 100, 'new', [3, 4, 5]]
Sameina annan lista eða tuple í lokin (samtenging):extend(),+rekstraraðili
Með listaaðferðinni extend() geturðu sameinað annan lista eða tuple í lokin (enda). Öllum þáttum verður bætt við lok upprunalega listans.
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]
Athugaðu að hverjum staf (einingu) er bætt við strenginn einn staf í einu.
l.extend('new')
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w']
Það er líka hægt að sameina með því að nota + rekstraraðilann í staðinn fyrir extend() aðferðina.
+ rekstraraðili, nýr listi er skilaður.+=
Þetta gerir þér einnig kleift að bæta því við núverandi lista.
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]
Bættu við (settu inn) staki á tilgreindri staðsetningu.:insert()
Listaaðferðin insert() getur bætt við (sett inn) staki á tiltekinni staðsetningu.
Fyrsta röksemdin tilgreinir staðsetninguna og seinni röksemdin tilgreinir þáttinn sem á að setja inn. Fyrsta (upphaflega) staðan er 0; fyrir neikvæð gildi er -1 síðasta (loka) staðan.
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]
Eins og með append() er listinn bætt við sem stakur þáttur. Það verður ekki sameinað.
l.insert(0, [-1, -2, -3])
print(l)
# [[-1, -2, -3], 100, 0, 1, 200, 2]
Athugaðu að insert() er ekki skilvirk aðgerð vegna þess að hún krefst eftirfarandi kostnaðar. Sjá eftirfarandi síðu á opinberu wiki fyrir útreikningsflækjustig hinna ýmsu listaaðgerða.O(n)
O(1)
Deque tegundin er gefin upp í venjulegu bókasafnssafnaeiningunni sem gerð til að bæta þáttum efst á þennan kostnað. Til dæmis, ef þú vilt meðhöndla gögn sem biðröð (FIFO), er skilvirkara að nota deque.
Bættu við (settu inn) öðrum lista eða tuple á tilgreindum stað:sneið
Ef þú tilgreinir svið með sneið og úthlutar öðrum lista eða tuple, verður öllum þáttum bætt við (sett inn).
l = list(range(3))
print(l)
# [0, 1, 2]
l[1:1] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 1, 2]
Þú getur líka skipt út upprunalega þættinum. Öllum þáttum á tilgreindu sviði verður skipt út.
l = list(range(3))
print(l)
# [0, 1, 2]
l[1:2] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 2]