在Python中,copy()
函数用于创建一个对象的副本。它接受一个对象作为参数,并返回一个新的对象,该对象具有与原始对象相同的值,但是是一个独立的副本。这意味着对副本进行修改不会影响原始对象。
copy()
函数可以用于深拷贝和浅拷贝。如果对象本身不包含其他对象的引用,则执行浅拷贝;如果对象包含其他对象的引用,则执行深拷贝。
以下是copy()
函数的用法示例:
浅拷贝:
import copy
original_list = [1, 2, 3, [4, 5]]
copied_list = copy.copy(original_list)
original_list[0] = 10
original_list[3][0] = 40
print(original_list) # 输出: [10, 2, 3, [40, 5]]
print(copied_list) # 输出: [1, 2, 3, [40, 5]]
深拷贝:
import copy
original_list = [1, 2, 3, [4, 5]]
copied_list = copy.deepcopy(original_list)
original_list[0] = 10
original_list[3][0] = 40
print(original_list) # 输出: [10, 2, 3, [40, 5]]
print(copied_list) # 输出: [1, 2, 3, [4, 5]]
注意,copy()
函数只能用于普通的对象,对于一些特殊的对象(如文件、套接字等),可能不会产生预期的结果。在这种情况下,需要使用相关的函数或方法来进行拷贝。