变量和按引用传递
python中对变量进行赋值时,其实是在创建等号右侧对象的一个引用。例如
输入:>>>a=[1,2,3]
>>>b=a
在某些语言中,该赋值过程将会导致数据[1,2,3]被复制。而在python中,a和b现在都指向同一个对象,即原始列表[1,2,3]。若此时向a中添加一个元素,即
>>>a.append(4)
>>>print(b)
可以看到b中的列表元素同a一样,也变为[1,2,3,4],如下图所示
因此,python被称为按引用传递的,而某些其他的语言既支持按值传递(创建副本)又支持按引用传递。
posted on 2019-02-12 14:45 ayuandeblog 阅读(141) 评论(0) 编辑 收藏 举报