2012-12-25 37 views
1

可能重複:
*args and **kwargs?Python中**星號變量**的語義

我所知道的結構*變種

def fn(*var): 
    pass 

這要是的analoguous . var scheme或va_args c

現在我遇到的驚人結構

def fn(**list): 
    pass 

傳遞到fn的變量和值的名稱,其是有用的,作爲字典(與方案沒有類似的)。

是否有一些Python結構3個星號?

def fn (***variable) 

什麼是asterisk + variable Python中的一般含義?

+0

只有1或2個星號有意義,正如您所描述的 –

+3

[* args和** kwargs](http://stackoverflow.com/q/3394835/1764118) –

+0

謝謝。這是有用的知道。 – alinsoar

回答

2

在Python,***有特定的含義,就像你描述。沒有***並適用於星號的數量沒有一般規則。

+0

你能解釋一下他們是什麼嗎?我很想知道,因爲我只涉足Python。 – ArtB

+1

@ArtB:最好是參考Python文檔本身,段[5.3.4呼叫(http://docs.python.org/2/reference/expressions.html#calls)。 –

+1

** TL;博士**參數與''經由匿名元組傳遞過去了,參數用'**通過'經由匿名地圖通過。 – ArtB