Python 是否有 elif 的三元条件?
Does Python have ternary conditional with elif?
我最近发现了这个问题:Does Python have a ternary conditional operator? 并发现了一个叫做三元条件 a = b if c == d else e
的东西。
我的问题:有一种方法可以使三元条件与 elif
? 类似 a = b if c == d elif e == f i else j
.
您可以嵌套三元组:
a = b if c == d else (i if e == f else j)
我想不出有任何语言具有带 elseif
语法的三元运算符。名称 "ternary" 表示运算符只有 3 个部分:条件、然后和其他。
您可以链接条件运算符,但不推荐这样做,因为它很难阅读。关联性按照您期望的方式工作(就像所有语言 aside from PHP):
a = b if c == d else i if e == f else j
英文的意思"assign b to a if c equals d, otherwise, assign i if e equals f, and j if not."
'Yes' if test1() else 'Maybe' if test2() else 'No'
PS。另外,请注意,您可能指的是检查相等性的 a==b
,而不是赋值的 a=b
!
我最近发现了这个问题:Does Python have a ternary conditional operator? 并发现了一个叫做三元条件 a = b if c == d else e
的东西。
我的问题:有一种方法可以使三元条件与 elif
? 类似 a = b if c == d elif e == f i else j
.
您可以嵌套三元组:
a = b if c == d else (i if e == f else j)
我想不出有任何语言具有带 elseif
语法的三元运算符。名称 "ternary" 表示运算符只有 3 个部分:条件、然后和其他。
您可以链接条件运算符,但不推荐这样做,因为它很难阅读。关联性按照您期望的方式工作(就像所有语言 aside from PHP):
a = b if c == d else i if e == f else j
英文的意思"assign b to a if c equals d, otherwise, assign i if e equals f, and j if not."
'Yes' if test1() else 'Maybe' if test2() else 'No'
PS。另外,请注意,您可能指的是检查相等性的 a==b
,而不是赋值的 a=b
!