看板
[ Python ]
討論串[問題] function 選擇性使用 default kwarg
共 6 篇文章
內容預覽:
有個困擾很久的問題. 考慮以下程式碼:. def f(a,b=10):. print(a+b). use_default_b=True. a=5. if use_default_b:. f(a). else:. f(a,b=100). 其中不同的 use_default_b 布林值會有不同的運行結果
(還有298個字)
內容預覽:
這樣可能好一點點:. params = {}. params.update({} if use_default_b else {"b": 100}). f(a, **params). 每多一個這種參數就多一行update就好。. 其實如果可以改動f內容跟use_default_b來源就會有更好的做法
(還有113個字)
內容預覽:
也可以用functools的partial先把b跟kwargs丟進去. from functools import partial. def f(a, b = 10):. print(a + b). use_default_b = True. a = 5. params = {}. if use_d
(還有32個字)
內容預覽:
不知道前後限制下,我會簡單這樣改寫,參考看看:. def f(a, b):. print(a+b). a = 5. b = 10 # This is default b. if not use_default_b:. b = 100 # get new b value. f(a, b=b). 其實我
(還有14個字)
內容預覽:
f(a,. b = 10 if condition else 100). 既然知道預設值是多少,直接傳就好了. --. 「看在上帝的份上,我們不能當著孩子的面槍殺他的父親!」. 「那我們就連孩子一起幹掉!」. 「第一槍打中的是那個天真的孩子,第二槍是抱著孩子的母親。第三槍. 停頓了三秒,當難以致信的
(還有88個字)