python 函式引數前加 星號的含義

2021-10-13 13:11:19 字數 669 閱讀 8026

加乙個*星號:表示引數數量不確定,將傳入的引數儲存為元組。

加兩個*星號:表示引數數量不確定且引數型別是關鍵字引數,將傳入的引數儲存為字典。

加乙個*星號:

def

main

(*args)

:print

(args)

main(1,

2)'''out

(1, 2)

'''

加兩個*星號:

def

main

(**kwargs)

:print

(kwargs)

main(a=

1, b=2)

'''out

'''

此外,還有一種常見的*星號用法:

def

main

(arg1,

*, arg2)

:print

(arg1, arg2)

main(

1, arg2=

2)

這裡的*表示佔位符,星號前面的引數可以指定引數名賦值,也可以直接賦值;但星號後面的引數是關鍵字引數,必須指定引數名賦值。

Python中引數前加星號的用法

剛開始折騰python,今天發現了乙個很奇怪的錯誤。def accept s print sum s list 0,1,2,3,7.5 print sum list accept list 這段 會報錯 typeerror unsupported operand type s for int and...

Python 引數知識(變數前加星號的意義)

過量的引數 在執行時知道乙個函式有什麼引數,通常是不可能的。另乙個情況是乙個函式能操作很多物件。更有甚者,呼叫自身的函式變成一種api提供給可用的應用。對於這些情況,python提供了兩種特別的方法來定義函式的引數,允許函式接受過量的引數,不用顯式宣告引數。這些 額外 的引數下一步再解釋。注意arg...

python函式引數帶星號

deffunction with one star t print t,type t deffunction with two stars d print d,type d 上面定義了兩個函式,分別用了帶乙個星號和兩個星號的引數,它們是什麼意思,執行下面的 function with one sta...