iot*_*taa 1 python if-statement python-3.x
与相同的几个元素相比,我将需要多个 if 语句,并且想知道我是否可以做一些事情来使代码更干净、更简单。
例子就是这个函数。
def test(num):
a = [1, 2, 3]
if num == a :
return True
else :
return False
Run Code Online (Sandbox Code Playgroud)
会回来
>>>test(1)
True
>>>test(2)
True
>>>test(5)
False
Run Code Online (Sandbox Code Playgroud)
1而不必为、2和编写单独的 if 语句3。
使用in运算符
if num in a :
Run Code Online (Sandbox Code Playgroud)
如
def test(num):
a = [1, 2, 3]
if num in a :
return True
else :
return False
Run Code Online (Sandbox Code Playgroud)
解决方法是(按照 Padraic 的建议)
def test(num):
a = [1, 2, 3]
return num in a
Run Code Online (Sandbox Code Playgroud)
这是可行的,因为 in 运算符会比较 LHS 是否存在于 RHS 中并分别返回一个布尔值。
这也是可能的
test = lambda x: num in [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
这一切都在一行中!
| 归档时间: |
|
| 查看次数: |
6932 次 |
| 最近记录: |