2017-08-30 55 views

回答

2

有條件地建立自己的kwargs:

kwargs = {} 
if condition: 
    kwargs['z'] = 1 

return f(x, y, **kwargs) 
+7

可能不是一個單一的kwarg最好的。 –

+2

當然,在這個特定情況下,你可以把它簡化爲更簡單的東西,但這是我追求的一般方法。 – deceze

0
return f(x, y, z=condition) 

如果條件是布爾;)

+1

但''z''可能是一個數字,我們不知道默認值(對於我們所知的所有數據可能是「-1」或「None」)。 –

+0

的確如此。問題是,這個問題沒有提供足夠的英特爾... – campovski

3

你的解決方案看起來Python化不夠,雖然可以使用一個三元條件將其壓平:

return f(x, y, z=1) if condition else f(x, y) 
相關問題