python不允许程序员选择采用传值还是传引用。
Python参数传递采用的肯定是“传对象引用”的方式。这种方式相当于传值和传引用的一种综合。
如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过“传引用”来传递对象。如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,就不能直接修改原始对象--相当于通过“传值’来传递对象。
所以在定义函数的时候,如果需要传入可变对象作为参数,而又不是失去函数的基本功能——复用,可以在定义函数内部调用此参数后将此可变对象初始化——重新赋于原值,这样就不影响此函数的复用了。
谁能仅靠十年寒窗苦读,去经营百岁人生?
活到老,学到老!
知识改变人生!
共勉!