[Python] La diferencia entre el método de lista "+" y "extend ()"

La lista es un tipo de estructura de datos común
en Python. Se utiliza para agregar un dato después de la lista. Existe el método "append ()". Hay dos métodos
para agregar varios datos después de la lista. Hay dos métodos: "+ "y" extender () ".
El" + "se introduce a continuación. Similitudes y diferencias entre los dos métodos" extender () ":

1 método extend ()

a = [1,2,3]
b = [4,5,6]
print("a id :",id(a))
print("b id :",id(b))

# extend()方法
a.extend(b)
print("extend: a =",a)
print("extend: a id =",id(a))

# 结果
>> a id : 139646799147568
>> b id : 139646799150128
>> extend: a = [1, 2, 3, 4, 5, 6]
>> extend: a id = 139646799147568

Se puede ver que el método extend () de la lista puede agregar múltiples elementos en la lista b a a sin cambiar la identificación de un

2 Adición de lista


a = [1,2,3]
b = [4,5,6]
print("a id :",id(a))
print("b id :",id(b))

# +
a += b
print("+: a =",a)
print("+: a id =",id(a))

# 结果
>> a id : 140080409711152
>> b id : 140080409713712
>> +: a = [1, 2, 3, 4, 5, 6]
>> +: a id = 140080409711152

Se puede ver que el método de suma de la lista puede lograr la misma función sin cambiar el id de un

3 asuntos que necesitan atención

Otros blogs en Internet pueden decir que el método de adición de la lista de adición cambiará la identificación.
Tenga en cuenta que esto se debe a la introducción de una nueva lista en su instancia, como se muestra a continuación.

a = [1,2,3]
b = [4,5,6]
c = []
print("a id :",id(a))
print("b id :",id(b))
print("c id :",id(c))

# +
c = a + b
print("a =",a)
print("b =",b)
print("c =",c)
print("a id :",id(a))
print("b id :",id(b))
print("c id :",id(c))

>> a id : 140212670542384
>> b id : 140212670544944
>> c id : 140212669314064
>> a = [1, 2, 3]
>> b = [4, 5, 6]
>> c = [1, 2, 3, 4, 5, 6]
>> a id : 140212670542384
>> b id : 140212670544944
>> c id : 140212669289248

Se puede ver que c se inicializa a una lista vacía al principio.
Después de pasar la asignación, la identificación cambia. Esta es la razón no explicada en otras publicaciones en Internet.

Supongo que te gusta

Origin blog.csdn.net/ao1886/article/details/109114069
Recomendado
Clasificación