18

重複の可能性:
Python三項演算子

PythonがC/C ++の(x?a:b)構文をサポートする場合、次のように記述します。

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

ここにif-checkと2つの独立した印刷を入れたくありません(これは上記の例にすぎないため、私のコードでは、はるかに複雑に見え、ほぼ同じコードを2回持つのは本当にばかげています)。

ただし、Pythonはこの演算子または同様の演算子(afaik)をサポートしていません。これを行うための最も簡単/クリーン/最も一般的な方法は何ですか?

私は少し検索して、Visual Basicから着想を得たiif(cond、iftrue、iffalse)関数を定義している人を見ました。本当にそのコードを追加する必要があるのか​​、そして標準ライブラリにそのような基本的な関数がないのか/なぜなのか疑問に思いました。

4

1 に答える 1

19

試す

 print ("paid: " + str(paid) + " €") if paid else "not paid"
于 2010-06-15T13:42:35.207 に答える