Python中使用 = 赋值,使用copy()复制

来源:互联网 发布:云计算和大数据的关系 编辑:程序博客网 时间:2024/06/07 00:32

如果将一个列表赋值给多个变量,改变其中的任何一处会造成其他变量对应的值也被修改。因为两者若指向同一个对象,所以无论我们通过其中任何一个的来修改列表的内容,其结果都会作用于双方。


通过下面任意一种方法,都可以将一个列表的值复制到另一个新的列表中:

(1)列表copy()函数


(2)list()转换函数


(3)列表分片[:]

称测试初始时的列表为a,然后利用copy()函数创建b,利用list()函数创建c,并使用列表分片创建d:
>>>a = [1,2,3]>>>b = a.copy()>>>c = list(a)>>>d = a[:]
再次注意,在这个例子中,b、c、d都是a的复制它们是自身带有值得新对象,与原始的a所指向的列表对象[1,2,3]没有任何关联,改变a不影响b、c和d的复制
>>>a[0] = 'integer lists are boring'>>>a['integer lists are boring',2,3]>>>b[1,2,3]>>>c[1,2,3]>>>d[1,2,3]




原创粉丝点击