1 函數(shù)調(diào)用
1.1 傳遞實參
使用 *
hello(*args):* 的作用其實就是把序列 args 中的每個元素皿曲,當作位置參數(shù)傳進去魔熏。
比如上面這個代碼缅阳,如果 args 等于 (1,2,3) 充甚,那么這個代碼就等價于 test(1, 2, 3) 。
使用 **
hello(**kwargs):** 的作用則是把字典 kwargs 變成關(guān)鍵字參數(shù)傳遞帮哈。比如上面這個代碼,如果 kwargs 等于 {'a':1,'b':2,'c':3} 锰镀,那這個代碼就等價于 test(a=1,b=2,c=3) 娘侍。
1.2 定義形參
使用 *
def hello(*args): 定義函數(shù)參數(shù)時咖刃, *args 表示把傳進來的位置參數(shù)都裝在元組 args 里面。比如說上面這個函數(shù)憾筏,調(diào)用 hello(1, 2, 3) 的話僵缺, args 的值就是 (1, 2, 3) 。
使用 **
def test(**kwargs):? ** 就是針對關(guān)鍵字參數(shù)和字典的了踩叭。 調(diào)用hello(a=1,b=2,c=3) 的話磕潮, kwargs 的值就是 {'a':1,'b':2,'c':3} 了。