2010-06-15 101 views
13

संभव डुप्लिकेट:
Python Ternary Operatorअजगर: (? एक्स एक: ख) IIF या

अगर पायथन (एक्स एक: ख) का समर्थन करेगा C/C से वाक्य रचना ++, मैं ने लिखा है:

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

मैं वास्तव में यहाँ एक अगर की जांच और दो स्वतंत्र प्रिंट करने के लिए नहीं करना चाहते हैं (क्योंकि यह है कि केवल एक उदाहरण से ऊपर है, मेरे कोड में, यह बहुत जटिल लग रहा है और वास्तव में लगभग एक ही कोड दो बार बेवकूफ होगा)।

हालांकि, पायथन इस ऑपरेटर या किसी भी समान ऑपरेटर (afaik) का समर्थन नहीं करता है। ऐसा करने का सबसे आसान/साफ/सबसे आम तरीका क्या है?

मैंने विजुअल बेसिक से प्रेरित थोड़ा और 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" 
संबंधित मुद्दे