您好,登錄后才能下訂單哦!
函數參數有4種:
必填參數:填入規定數量的參數,不能多,也不能少。
默認參數:把某位參數設置為默認值,這樣在不輸入的情況下,按默認值傳遞;即此參數可以不輸入。
可變參數:參數可以任意給多少個都行。 習慣使用*args表示;*arg傳入的是tuple。
關鍵字參數:= 默認參數 + 可變參數。 習慣使用**kw表示;**kw傳入的是dict。
一、必填參數
def cal(x, y):
t = x + y;
return t;
二、默認參數
def cal(x, y = 0):
t = x + y ;
return t;
三、可變參數
#once way
def cal(number) #number 為list / tuple ---> cal([1, 2, 3, 4])
sum = 0;
for n in number:
sum = sum + n; #累加
return sum;
#twice way
tup = set(1, 2, 3)
def cal(*number) #number 為tuple ---> cal(tup)
sum = 0;
for n in number:
sum = sum + n; #累加
return sum;
#other way
tup = set(1, 2, 3)
def cal(*number) #number 為tuple ---> cal(tup[0], tup[1], tup[2])
sum = 0;
for n in number:
sum = sum + n; #累加
return sum;
四、關鍵字參數
#once way
def person(name, age, **kw)
print "name:%s"%name, print "age:",age, print "other:" kw
也可以傳入任意個數的關鍵字參數:
>>> person('Adam', 45, gender='M', job='Engineer')
name: Adam age: 45 other: {'gender': 'M', 'job': 'Engineer'}
先組裝出一個dict,然后,把該dict轉換為關鍵字參數傳進去:
>>> kw = {'city': 'Beijing', 'job': 'Engineer'}
>>> person('Jack', 24, city=kw['city'], job=kw['job'])
name: Jack age: 24 other: {'city': 'Beijing', 'job': 'Engineer'}
簡化的寫法:
>>> kw = {'city': 'Beijing', 'job': 'Engineer'}
>>> person('Jack', 24, **kw)
name: Jack age: 24 other: {'city': 'Beijing', 'job': 'Engineer'}
五、組合
組合順序:必填參數、可選參數、可變參數、關鍵字參數
def func(a, b, c=0, *args, **kw):
print 'a =', a, 'b =', b, 'c =', c, 'args =', args, 'kw =', kw
>>> func(1, 2) a = 1 b = 2 c = 0 args = () kw = {}
>>> args = (1, 2, 3, 4)
>>> kw = {'x': 99}
>>> func(*args, **kw)
a = 1 b = 2 c = 3 args = (4,) kw = {'x': 99}
程序參考于https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738449338c8a122a7f2e047899fc162f4a7205ea3000
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。