10

有没有办法在python中缩写比较语句,这样我就不必再把整个事情写出来了?例如,而不是:

a=3
if a==3 or a==2:
    print "hello world"

我可以做类似的事情吗:如果 a==(3 or 2): print "hello world"

我知道上面的例子行不通,但是还有其他方法可以达到预期的效果吗?

4

3 回答 3

14
if a in (2, 3):
  print "hello world"
于 2012-05-16T19:56:36.263 回答
14

可能的解决方案,具体取决于您想要什么:

  • if a in (2,3)
  • if a in xrange(2, 4)
  • if 2 <= a <= 3
于 2012-05-16T19:57:07.783 回答
13

有关以下答案的原因,请参阅Python 3.2 优化。

a = 3
if a in {2, 3}:
    print('Hello, world!')
于 2012-05-16T20:11:46.403 回答