Directorio de artículos
Prefacio
Explicar y organizar algunos conocimientos básicos de uso común en Python.
『Python』 tutorial básico de Python (1) -estructura de datos básica
1. Copia profunda y copia superficial
1.1 Asignación directa
Solo se copia la referencia, por lo que no hay aislamiento entre las variables antes y después. Si la lista original cambia, las variables copiadas también cambiarán.
1.2 Copia superficial
Usando la función copy (), se copia la periferia más externa de la lista, mientras que los objetos dentro de la lista siguen siendo referencias.
1.3 Copia profunda
Usando la función deepcopy (), se copian las partes interna y externa de la lista, por lo que las variables antes y después están completamente aisladas en lugar de ser referenciadas.
# 示例 demo
import copy
a = [1, 2, ["a","b"]]
b = a # 直接赋值,变量前后没有隔离
c = copy.copy(a) # 浅拷贝
d = a[:] # 相当于浅拷贝,与 c 相同
e = copy.deepcopy(a) # 深拷贝,前后两个变量完全隔离
a.append(3)
a[2].append("c")
print(a) # [1, 2, ["a", "b", "c"], 3]
print(b) # [1, 2, ["a", "b", "c"], 3]
print(c) # [1, 2, ["a", "b", "c"]]
print(d) # [1, 2, ["a", "b", "c"]]
print(e) # [1, 2, ["a","b"]]
Nota: aún no lo he terminado, estoy ocupado, tómate el tiempo para seguir actualizando los combates ...