函数的默认值
Dafault value of function
对于以下程序:
x=12
def f1(a,b=x):
print(a,b)
x=15
f1(4)
为什么输出是 4 12 而不是 4 15?
该函数不会在调用之前获取 x 的最新值吗?但是只会在定义之前获取值吗?
b的值是在定义函数的时候设置的。如果你想在调用函数时设置它,你必须在函数中自己做,比如:
def f1(a, b = None):
if b is None:
b = x
print(a, b)
对于以下程序:
x=12
def f1(a,b=x):
print(a,b)
x=15
f1(4)
为什么输出是 4 12 而不是 4 15? 该函数不会在调用之前获取 x 的最新值吗?但是只会在定义之前获取值吗?
b的值是在定义函数的时候设置的。如果你想在调用函数时设置它,你必须在函数中自己做,比如:
def f1(a, b = None):
if b is None:
b = x
print(a, b)