# encoding=utf-8
_list = []
_dict = {'a': 1, 'b': 2}
# test
_list.append(_dict)
print 'before change for list:', _list
_dict.update({'a': 100})
print 'after change for list:', _list
print '*'*10
# 说明对于可变对象list,是传的应用ref;会随着改变。
# 不可变对象,是传的值
_r_list = [1, 2]
_tuple = tuple(_r_list)
print 'before change for tuple:', _tuple
_r_list.append(3)
print 'after change for tuple:', _tuple
# 理解如下
_dict = {'a': -1}
_list = []
for i in range(3):
_dict.update({'a': i})
_list.append(_dict)
print 'result:', _list
# result: [{'a': 2}, {'a': 2}, {'a': 2}]
python中值传递还是引用
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- https://blog.csdn.net/trochiluses/article/details/16879473
- JS的基本类型,是按值传递的:var a = 1;function foo(x) {x = 2;}foo(a);c...
- 引用文章地址:http://www.cnblogs.com/loleina/p/5276918.html 引用文章...
- 《事出未必有因,知因未必有果》 生活中,我们无论遇到什么事情,一般的,人们总是会努力思考问题的成因。那么,知...