Python中的变量引用对象需注意的几点

 我来答
毛羽崇卿云
2020-03-27 · TA获得超过1158个赞
知道小有建树答主
回答量:1833
采纳率:100%
帮助的人:10.7万
展开全部
给你介绍Python中普通引用和共享引用在引用对象中需要注意的点:
普通引用:
Python中,变量的作用仅仅是一个标识,只有赋值后才被创建,它可以引用任何类型的对象,而且在引用之前必须赋值。赋值后的变量指向响应的对象,拥有该对象的空间。类型属于对象,但是不是变量。
[python]
view
plain
copy
a
=
3
a
=
"science"
上述代码说明数值3和字符串“science”分别是两种对象,初始变量a赋值对象3被创建,变量a指向对象3的内存空间,之后变量a又指向了字符串的内存空间。
共享引用:
[python]
view
plain
copy
a
=
3
b
=
a
上述代码说明变量a,b同时引用了对象3,两个变量引用了相同的对象。正是因为两者都是指向了相同的对象,所以当其中一个变量引用其他对象的时候,不会对另一个变量造成影响。例如:
[python]
view
plain
copy
a
=
“science”
在上面代码的基础上,变量a引用了字符串对象“science”,此时变量b依旧引用对象3,而不是“science”。
但是有些对象的操作会在原处修改,例如列表。例如:
[python]
view
plain
copy
a
=
[1,2,3]
b
=
a
变量a,b应用了包含1,2,3对象的列表,自然而然的a[0]引用对象1,如果在变量a中执行操作
[python]
view
plain
copy
a[0]
=
4
那么变量b就变随之变为[4,2,3]。避免这种情况可以使用copy操作,替换引用操作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式