2010-02-23 46 views

回答

115

在Ruby和Perl 6中,這被稱爲「splat」,我認爲大多數來自這些社區的人會找出你的意思,如果你這樣稱呼它。

Python tutorial使用短語「解包參數列表」,這是一個長和描述性的。我還沒有在Python中聽到任何其他特殊的名字。

+5

也有'**'的名字,還是Python獨有? –

+71

在使用python大約10年以前從未聽過/看過「splat」。 –

+8

那麼在Python中,它也被用來** ** **參數列表,所以在這種情況下它應該被稱爲** unplat **? :) –

27

Python Tutorial只是簡單的稱之爲'* -operator'。它執行arbitrary argument lists的拆包。

+0

這是最準確的答案,它是一個不被接受的恥辱! – alfasin

+2

@alfasin:'*'-operator'表達式不明確,因爲'*' - 取決於上下文 - 可以執行參數擴展或乘法,這是兩種不同的操作。 – HelloGoodbye

+0

@HelloGoodbye,真的不難理解它來自哪個上下文。 – alfasin

16

我說「star-args」,Python的人似乎知道我的意思。

**是麻煩 - 我認爲只是「qargs」,因爲它通常被用作**kw**kwargs

+2

我也只是說'kwargs',雖然這並不真正指向運營商本身我想。 –

93

我稱之爲「位置擴張」,而不是**我稱之爲「關鍵字擴展」。

+2

double-splat,哈哈。 –

-1

我打電話給* args「star args」或「varargs」和** kwargs「keyword args」。