2010-06-15 2 views
13

가능한 중복 :
Python Ternary Operator파이썬 (? X A : B) IIF 또는

파이썬은 (X? : B)를 지원한다면 C/C에서 구문 ++를, 내가 작성합니다 : 그것은 단지 예를 들어 내 코드에서, 위이기 때문에

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

난 정말 (여기 경우 검사 2 개의 독립적 인 인쇄하고 싶지 않아요, 그것을 훨씬 더 복잡해 보입니다. 거의 동일한 코드를 두 번 사용하는 것은 어리석은 일입니다).

그러나 파이썬은이 연산자 또는 유사한 연산자 (afaik)를 지원하지 않습니다. 이 작업을 수행하는 가장 쉽고/가장 깨끗한/가장 일반적인 방법은 무엇입니까?

Visual Basic에서 영감을 얻어 seen someone defining an iif(cond,iftrue,iffalse) function을 검색했습니다. 나는 정말로 그 코드를 추가해야만하는지 그리고 표준 라이브러리에 그러한 기본적인 기능이 없는지에 대해 궁금해했다.

+2

복제를 시도 http://stackoverflow.com/questions/394809/python-ternary-operator/394814 –

답변

13

보고,

print ("paid: " + str(paid) + " €") if paid else "not paid" 
관련 문제