已有183人关注
值传递,改变形式参数的值后,实际参数的值为什么不变。
还有0人有此问题
发表在Python图书答疑 2020-11-29 《零基础学Python》第6章 函数 164页-0页
是否精华
版块置顶:

值传递,改变形式参数的值后,实际参数的值为什么不变。

2020-11-29 19:56:56编辑
分享到:
精彩评论 1
Gaxin
学分:2 LV1
2021-11-14
沙发

因为值传递的变量是不可变的,所以不变。Python的每个对象都分为可变和不可变,主要的核心类型中,数字、字符串、元组是不可变的,列表、字典是可变的。 对不可变类型的变量重新赋值,实际上是重新创建一个不可变类型的对象,并将原来的变量重新指向新创建的对象(如果没有其他变量引用原有对象的话(即引用计数为0),原有对象就会被回收)。 不可变类型 以int类型为例: 实际上 i += 1 并不是真的在原有的int对象上+1,而是重新创建一个value为6的int对象,i引用自这个新的对象。

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照