如何以pythonic方式做到这一点?

Mik*_*ike 3 python syntax

考虑这个Python片段:

for a in range(10):

    if a == 7:
        pass
    if a == 8:
        pass
    if a == 9:
        pass
    else:
        print "yes"
Run Code Online (Sandbox Code Playgroud)

如何写得更短?

#Like this or...
if a ?????[7,8,9]:
    pass
Run Code Online (Sandbox Code Playgroud)

z33*_*33m 17

使用in运营商:

if a in (7,8,9):
    pass
Run Code Online (Sandbox Code Playgroud)

  • @dzen:取决于你和谁说话.在这种情况下,它的风格和一致性比您选择的更重要. (2认同)

小智 15

要测试a是否属于某个范围:

if 7 <= a <= 9:
  pass
Run Code Online (Sandbox Code Playgroud)

要测试a是否在给定的序列中:

if a in [3, 5, 42]:
  pass
Run Code Online (Sandbox Code Playgroud)