2010-06-15 24 views
13

可能重複:
Python Ternary Operator蟒:(ΔXA:B)IIF或

如果Python的將支持(X A:b)由C/C語法++,我會寫:

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

我真的不希望有一個,如果檢查和兩個獨立的打印位置(因爲這只是一個例子上面,在我的代碼,它看起來要複雜得多,而且真的很愚蠢,幾乎有相同的代碼兩次)。

但是,Python不支持此運算符或任何類似的運算符(afaik)。什麼是最簡單/最乾淨/最常見的方式來做到這一點?

我已經搜索了一點,seen someone defining an iif(cond,iftrue,iffalse) function,靈感來自Visual Basic。我想知道是否真的必須添加該代碼,以及/爲什麼標準庫中沒有這樣的基本功能。

+2

重複,看http://stackoverflow.com/questions/394809/python-ternary-operator/394814 – 2010-06-15 13:41:20

回答

13

嘗試

print ("paid: " + str(paid) + " €") if paid else "not paid"