Python:函數參數默認值
最近更新時間 2020-01-30 12:38:06
Python 函數可以指定一個或多個參數的默認值,這樣創建的函數,可以使用比定義更少的參數調用。
def func(first, second='second'):
print(first, ':', second)
func('first')
first : second
默認值在函數定義時計算,下面案例會輸出 2:
i = 2
def f(arg=i):
print(arg)
i = 3
f()
2
默認值只會執行一次,如果默認值為可變對象(列表、字典等)後續調用多次需要特別注意。
def f(a, L=[]):
L.append(a)
return L
print(f(1))
print(f(2))
print(f(3))
[1] [1, 2] [1, 2, 3]
def f(a, L=None):
if L is None:
L = []
L.append(a)
return L
print(f(1))
print(f(2))
print(f(3))
[1] [2] [3]