关于Python赋值语句中target与object含义的技术咨询
关于Python赋值语句中target与object含义的技术咨询
嘿,作为Python初学者能留意到文档里的细节,这真的超棒!我来给你把这俩术语讲明白~
先把你提到的文档内容放这儿方便对照:
Assignment statements in Python do not copy objects, they create bindings between a target and an object. For collections that are mutable or contain mutable items, a copy is sometimes needed so one can change one copy without changing the other.
针对你给出的代码variable1 = 'a string',这两个术语的含义很清晰:
- target(目标):就是等号左边的
variable1,它是一个变量名,是用来和实际数据建立绑定关系的“标识”。 - object(对象):是等号右边的
'a string'——Python里所有的数据都是以对象形式存在的,这个字符串就是一个实实在在的字符串对象,是程序里存储数据的实体。
再给你补个小解释:Python的赋值语句不是把对象“复制”一份给变量,而是给变量(target)和对象之间搭了个“链接”,让变量能找到这个对象。比如之后如果写variable2 = variable1,其实是让variable2也绑定到同一个'a string'对象,不是生成了新的字符串哦。
备注:内容来源于stack exchange,提问作者gus
相关产品推荐
相关产品推荐

