我想知道我心爱的C Makro 'Exp1 ? Exp2 : Exp3'.
我已经尝试过Google,但似乎找不到任何东西。
示例:
x = 0.5
(x > 0) ? 1 : 0
if(type == "release"):
release = True
else:
release = False
答案 0 :(得分:2)
您的情况看起来像这样
1 if x > 0 else 0
答案 1 :(得分:0)
对于Python 3.x :
trueExp if expr. else falseExp
即:
x = 0.5
print(1 if x > 0 else 0) # 1
对于 Python 2.5 和更低版本:
Is there an equivalent of C’s ”?:” ternary operator?:
[expr.] and [trueExp] or [falseExp ]
即:
x = 0.5
print((x > 0) and 1 or 0) # 1
答案 2 :(得分:0)
答案 3 :(得分:0)
Python完全没有{em> 之类的Exp1 ? Exp2 : Exp3
。
但是,您可以将if-else语句压缩为一行。像
Exp2 if Exp1 else Exp3
在某种程度上等同于您要寻找的Python。
(我遵循了您编写C代码的顺序)
更确切地说,它类似于:
TrueVal if Expression else FalseVal
。