哪个条件语句更适合pythonic?

时间:2019-05-17 20:03:38

标签: python

您会考虑以下哪种方式:

return x if not x > 5 or not variable == True else y

return x if not (x > 5 and variable == True) else y

2 个答案:

答案 0 :(得分:4)

我会这样写

return y if x > 5 and variable else x

在第二个选项中取消条件的事实使切换该语句的ifelse部分变得容易。

而且,像

中那样,将布尔值与true进行比较(几乎)绝不是任何一种语言的好习惯
if variable == True:

只要写

if variable:

答案 1 :(得分:1)

Pythonic都不是,这只是如何构造布尔逻辑的问题。但是,我将variable == True替换为variable