Python在同一行中有多个if-else

Has*_*bal -1 python printing if-statement nested-if

我知道这是可能的:

a, b = 5, 10
print 'a' if a > b else 'b'  # outputs b
Run Code Online (Sandbox Code Playgroud)

但是,如果我还有另一个变量“ c”怎么办?如何使用与这两个变量相同的逻辑类型使它们在同一行中打印?就像是?

a, b, c = 5, 10, 20
print 'a' if a > b elif 'b' if b > c  else 'c'  # is it possible?
Run Code Online (Sandbox Code Playgroud)

只需提及:我知道这是一个不好的做法,我只是想知道。

Dan*_*iel 5

没有elif,请else多次使用:

print 'a' if a > b else 'b' if b > c else 'c'
Run Code Online (Sandbox Code Playgroud)

  • 或使用多个语句。这会很快变得不可读。 (2认同)