如果我聲明一個帶有非關鍵字參數的函數,如元組和關鍵字參數(如字典),它們是否被聲明?一個帶有非關鍵字參數和關鍵字參數的函數
例如:
def someFunc(a, *nkw, **kwa):
nkwList = []
kwList = []
for i in nkw:
nkwList.append(i)
for j in kwa:
kwList.append(j)
print a, nkwList, kwList
輸入:
someFunc(1)
輸出:
1 [] []
正如你所看到的,即使我沒有通過一個元組和字典,我當我通過nkw和kwa循環時,沒有得到Index超出範圍的錯誤。根據我的理解,我認爲* nkw和** kwa是在函數聲明中創建的。
任何人都可以幫助我理解這個概念嗎?
請注意'* nkw'和'** kwa'通常被稱爲'* args'和** ** kwargs' – second