在Python中,对象赋值实际上是对象的引用 。当创建一个对象,然后把它赋给另一个变量的时候,Python并没有拷贝这个对象,而只是拷贝了这个对象的引用,我们称之为浅拷贝 。在
在 Python 中,对象赋值实际上是对象的引用 。当创建一个对象,然后把它赋给另一个变量的时候,Python 并没有拷贝这个对象,而只是拷贝了这个对象的引用,我们称之为浅拷贝 。
在 Python 中,为了使当进行赋值操作时,两个变量互补影响,可以使用 copy 模块中的 deepcopy 方法,称之为深拷贝 。
append() 函数
当 list 类型的对象进行 append 操作时,实际上追加的是该对象的引用 。
id() 函数:返回对象的唯一标识,可以类比成该对象在内存中的地址 。
>>>alist = []
>>> num = [2]
>>> alist.append( num )
>>> id( num ) == id( alist[0] )
True
如上例所示,当 num 发生变化时(前提是 id(num) 不发生变化),alist 的内容随之会发生变化 。往往会带来意想不到的后果,想避免这种情况,可以采用深拷贝解决:
alist.append( copy.deepcopy( num ) )
【python必背入门代码 python中append怎么用】
推荐阅读
- 小六壬入门基础 小六壬寻物确定方向
- 七年级必背古诗词40首 七年级必背古诗词上册
- 如何网上自学家装设计? 按照这些步骤来入门
- python编程入门自学 游戏代码大全可复制免费
- 代码编程教学入门 代码怎么编写
- 3岁唐诗三百首幼儿园早教必背 幼儿必背古诗300首目录大全
- 埙为什么不能在家里吹呢 埙的吹法入门教程
- 教你从入门到精通的魔方教程 魔方教程公式口诀图解
- 围棋入门基本规则
- vba编程从入门到精通教程 vba初学者编程代码大全