有没有类似“Exp1”的c?Exp2:Exp3'在Python中?

2024-09-25 06:20:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有足够的python替代品来替代我心爱的C Makro'Exp1 ? Exp2 : Exp3'.

我已经试过用谷歌搜索,但似乎什么也找不到。在

示例:

x = 0.5
(x > 0) ? 1 : 0



if(type == "release"):
        release = True
else:
        release = False

Tags: falsetrue替代品示例releaseiftypeelse
3条回答

你要找的是一个ternary operator。在

在Python中有多种方法可以实现这一点,但您通常会发现以下构造:

x = 0.5
print(1 if x > 0 else 0)

你的案子看起来像这样

1 if x > 0 else 0

Python没有像Exp1 ? Exp2 : Exp3这样的完全。在

但是,可以将if-else语句压缩成一行。有点像

Exp2 if Exp1 else Exp3在某种程度上是Python中的等价物。在

(我遵循了你写C代码的顺序)

更准确地说,它类似于:

TrueVal if Expression else FalseVal。在

相关问题 更多 >