Skip to main content
 首页 » 编程设计

Python之是否有更优雅的方式来编写包含多个 OR 的 IF 语句

2025年05月04日12bjzhanghao

我有这个 IF, OR 语句:

a = 1 
b = 2 
c = 3 
d = 4 
 
if a == 5 or b == 5 or c == 5 or d == 5: 
    # do something 
else: 
    # do something different 

我想知道这是不是最好的写法?

请您参考如下方法:

您可以只使用 element in list 语法。此外,如果您只想打印 true 或 false,则无需使用 if else 语句。您可以直接打印 bool 值:

print(5 in [a, b, c, d]) 
# False 

如果你想要一个小写字符串:

print(str(5 in [a, b, c, d]).lower()) 
# "false" 

最后,如果你经常需要这个测试,你可以把这些值打包成一个 set :

a = 1 
b = 2 
c = 3 
d = 4 
all_values = set([a, b, c, d]) 

您将花费一些时间来创建集合,但查询 5 in all_values 应该会变得更快,尤其是在有很多变量的情况下。