1. 变量与对象:
Python 中一切皆为对象。数字是对象,列表是对象,函数也是对象,任何东西都是对象。
而变量是对象的一个引用,也称为名字或者标签。对象的操作都是通过引用来完成的。例如,[]是一个空列表,变量 a 是该对象的一个引用。
2. 函数参数:
Python 函数中,参数的传递本质是一种赋值操作,而赋值操作是一种名字(引用、标签)到对象的绑定过程。
3. Python函数到底传递的是什么:
最后,回到问题本身,究竟是是传值还是传引用呢?说传值或者传引用都不准确。非要安一个确切的叫法的话,叫传对象(call by object)。