python:iif或(x?a:b)

可能重复:
Python三元运算符

如果Python支持来自C / C ++的(x?a:b)语法,我会写:

print paid ? ("paid: " + str(paid) + " €") : "not paid"

我真的不想在这里有一个if-check和两个独立的打印(因为这只是上面的一个例子,在我的代码中,它看起来更加复杂,并且实际上有两个几乎相同的代码是愚蠢的)。

但是,Python不支持这个操作符或任何类似的操作符(afaik)。 什么是最简单/最干净/最常见的方式来做到这一点?

我搜索了一下,看到有人定义了一个iif(cond,iftrue,iffalse)函数,这个函数的灵感来自Visual Basic。 我想知道是否真的必须添加该代码,以及/为什么标准库中没有这样的基本功能。


尝试

 print ("paid: " + str(paid) + " €") if paid else "not paid"
链接地址: http://www.djcxy.com/p/7399.html

上一篇: python: iif or (x ? a : b)

下一篇: python (bool) ? then : else syntax?