python函数参数默认值及重要警告
2019-07-18 本文已影响1人
我爱学python
最有用的形式是对一个或多个参数指定一个默认值。这样创建的函数,可以用比定义时允许的更少的参数调用,比如:
这个函数可以通过几种方式调用:
只给出必需的参数:ask_ok('Doyoureallywanttoquit?')
给出一个可选的参数:ask_ok('OKtooverwritethefile?',2)
或者给出所有的参数:ask_ok('OKtooverwritethefile?',2,'Comeon,onlyyesorno!')
这个示例还介绍了in关键字。它可以测试一个序列是否包含某个值。
默认值是在定义过程中在函数定义处计算的,所以
会打印5。
重要警告:默认值只会执行一次。这条规则在默认值为可变对象(python列表、字典以及大多数类实例)时很重要。比如,下面的函数会存储在后续调用中传递给它的参数:
这将打印出
如果你不想要在后续调用之间共享默认值,你可以这样写这个python函数: