检查python中的多个条件

met*_*r23 3 python python-2.7

我有下面的代码:

a = 1
b = 2
c = 3
d = 4
e = 5
if ((a == 1 and
     b == 2 and
     c == 4) or
     (d == 4  and e == 5)):
    print "Yeah, Working"
else:
    print "ooops"
Run Code Online (Sandbox Code Playgroud)

可以实现相同的代码简单和最好的方法吗?

fra*_*ima 9

如果你想要条件更清晰或更好看,你可以这样做:

a = 1
b = 2
c = 3
d = 4
e = 5
if (a, b, c) == (1, 2, 4) or (d, e) == (4, 5):
    print "Yeah, Working"
else:
    print "ooops"
Run Code Online (Sandbox Code Playgroud)


Niz*_*ziL 7

这是一个非常个人化的答案,但是我想在if声明之前将一些布尔值初始化。我发现它更具可读性(因为您可以为变量指定一些有意义的名称),而且我敢肯定编译器可以轻松地对其进行优化。

cond1 = a == 1 and b == 2 and c == 4
cond2 = d == 4 and e == 5
if cond1 or cond2:
    print("Yeah, working")
else:
    print("ooops")
Run Code Online (Sandbox Code Playgroud)