浅拷贝和深拷贝

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅拷贝和深拷贝相关的知识,希望对你有一定的参考价值。

浅拷贝和深拷贝的区别?

深拷贝无论有多少嵌套都会复制出来

例如:

import copy

# 题目

list01 = [44, 55, 66]

list02 = [11, 22, 33, list01]

list03 = list02  # 直接赋值

list04 = list02.copy()  # 浅拷贝-copy

list05 = copy.copy(list02)  # 浅拷贝 - copy

list06 = copy.deepcopy(list02)  # 深拷贝 - deepcopy

 

# 修改List01

list01[0] = 88

list02[0] = 99

 

print(list01)

print(list02)

print(list03)

print(list04)

print(list05)

print(list06)

 

执行结果:

C:\python\python.exe C:/python/demo/file3.py

[88, 55, 66]

[99, 22, 33, [88, 55, 66]]

[99, 22, 33, [88, 55, 66]]

[11, 22, 33, [88, 55, 66]]

[11, 22, 33, [88, 55, 66]]

[11, 22, 33, [44, 55, 66]]

 

Process finished with exit code 0


以上是关于浅拷贝和深拷贝的主要内容,如果未能解决你的问题,请参考以下文章

JS-[浅拷贝和深拷贝]

c/c++/c++11 浅拷贝和深拷贝

Python中的赋值,浅拷贝和深拷贝的区别

Python3 & 浅拷贝与深拷贝

c++中的拷贝是怎么回事,请举例说明浅拷贝和深拷贝?

js对象浅拷贝和深拷贝详解