Sta*_*tec 0 python if-statement
我很清楚你可以if else用Python 做一行语句,但我想知道是否有可能添加一个or.出于某种原因,这不起作用,即使它看起来应该如此.有没有办法做到这一点:
def write(value):
return 'That is not a good value' if value is not 1 or 0 #SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
编辑
因此,此函数将检查传入的值是否为整数0或1,'That is not a good value'如果不是则返回,否则返回任何内容.IE
write(1) #Nothing
write(2) # That is not a good value
Run Code Online (Sandbox Code Playgroud)
试试这个:
'That is not a good value' if value not in (0, 1) else None
Run Code Online (Sandbox Code Playgroud)
在上面,我们可以使用inmembership运算符来测试or具有两个或更多条件的表达式的等价物.请注意,条件表达式必须包含一个else部分(请参阅文档).如果你不想返回"任何东西",你仍然需要返回一些东西.例如,空字符串''或None.