假設我有一個條件評估爲布爾值,condition
,我想將變量foo
設置爲取決於該條件的值。Python:大多數習慣用法有條件設置變量的方法?
我可以用幾種不同的方式編寫(爲了簡單起見,我們假設some_value
和some_other_value
是常量而不是函數調用)。這裏有一個辦法:
foo = None
if condition:
foo = some_value
else:
foo = some_other_value
這種做法很好,因爲foo
在頂部明確宣佈;但有點冗長。我們可以把它寫更簡單地稱爲:
if condition:
foo = some_value
else:
foo = some_other_value
這節省了我們的任務,但一些程序員能找到的foo
的範圍不清楚確切性質。
另一種方式可以是:
foo = some_other_value
if condition:
foo = some_value
這是更簡潔,節省了我們的一個分支;然而,對於快速閱讀代碼的人來說,這可能會產生誤導。
是風格還是執行速度的首選方法之一? (儘管我懷疑這裏的性能增益會很小,如果不是空的話) 或者是另一種編寫此代碼的推薦方式?
使用'if' /'else'沒有predeclaration ;人們應該知道你的意思。性能並不重要,但我想它也是最快的。 – Ryan