其实和传值还是传引用没有关系。
本质是形参和实参的区别。有了默认值,形参就变成实参了。没有默认值,就是从外部传入实参。另外就是变量的作用域。我觉得是python的bug。
【 在 milksea 的大作中提到: 】
: 因为:
: 1、Python 和很多语言一样,变量(包括函数变元)是引用语义的,即变量是对实际对象的一个引用(或者说绑定),对变量的赋值(包括传参)也不会新建一个对象,而是把变量重新引用(绑定)到等号右边的新对象上。
: 2、函数的默认参数的求值,是在定义时一次进行,而不是在每次调用时都进行。
: ...................
--来自微水木3.5.8
--
FROM 140.206.194.*