Afegir elements a una llista (matriu) en Python: append(), extend(), insert()

Negocis

Per afegir un element a una llista (matriu) de tipus llista en Python, o per combinar una altra llista, utilitzeu els mètodes de llista append(), extend() i insert(). També podeu utilitzar l’operador + o la secció per especificar una posició i assignar-la.

La informació següent es proporciona aquí.

  • Afegiu elements al final:append()
  • Combina una altra llista o tupla al final (concatenació):extend(),+operador
  • Afegeix (insereix) un element a la posició especificada.:insert()
  • Afegeix (insereix) una altra llista o tupla a la posició especificada:llesca

Afegiu elements al final:append()

Mitjançant el mètode append() de la llista, podeu afegir elements al final (últim). Si voleu afegir-lo a una posició diferent del final, com ara la part superior, utilitzeu insert() tal com es descriu a continuació.

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

Les llistes també s’afegeixen com a element únic. No es combinen.

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

Combina una altra llista o tupla al final (concatenació):extend(),+operador

Amb el mètode de llista extend(), podeu combinar una altra llista o tupla al final (el final). Tots els elements s’afegiran al final de la llista original.

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]

Tingueu en compte que cada caràcter (element) s’afegeix a la cadena un caràcter a la vegada.

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

També és possible concatenar utilitzant l’operador + en comptes del mètode extend().

+, es retorna una llista nova.+=Això també us permetrà afegir-lo a una llista existent.

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]

Afegeix (insereix) un element a la posició especificada.:insert()

El mètode de llista insert() pot afegir (inserir) un element en una posició especificada.

El primer argument especifica la posició i el segon argument especifica l’element que cal inserir. La primera posició (inicial) és 0; per a valors negatius, -1 és l’última posició (final).

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]

Igual que amb append(), la llista s’afegeix com un sol element. No es fusionarà.

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

Tingueu en compte que insert() no és una operació eficient perquè requereix els costos següents. Consulteu la pàgina següent a la wiki oficial per a la complexitat computacional de les diferents operacions de llista.
O(n)

O(1)
El tipus deque es proporciona al mòdul estàndard de col·leccions de biblioteques com a tipus per afegir elements a la part superior amb aquest cost. Per exemple, si voleu tractar les dades com una cua (FIFO), és més eficient utilitzar deque.

Afegeix (insereix) una altra llista o tupla a la posició especificada:llesca

Si especifiqueu un interval amb un segment i assigneu una altra llista o tupla, s’afegiran (inseriran) tots els elements.

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

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

També podeu substituir l’element original. Es substituiran tots els elements de l’interval especificat.

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