Olası yinelenen C++:
Python Ternary OperatorPython eşdeğer kısa formun "eğer"
Python bu C/C++ kod yazmak için bir yolu var mı? a = (b == true ? "123" : "456")
Olası yinelenen C++:
Python Ternary OperatorPython eşdeğer kısa formun "eğer"
Python bu C/C++ kod yazmak için bir yolu var mı? a = (b == true ? "123" : "456")
a = '123' if b else '456'
Bu üçlü operatör Python 2.5'te tanıtıldı. –
teşekkürler! tam olarak aradığım şey. python docs web sitesinde bulamadı. – huy
İleride başvurmak için, koşullu ifade için Python belgelerine bakın: http://docs.python.org/reference/expressions.html#boolean-operations –
fazla bilgi için PEP 308 bakınız.
Benim şifreli versiyon ...
a = ['123', '456'][b == True]
Tek satırlık ifadeden önce eski yaklaşımlardan biriydi. Mantıksal olarak bunu nasıl yapabilirsin: 'Doğru ve 'foo' ya da 'bar' '' – jdi
a = 'foo' if True else 'bar'
iken beyanı (piton 2.5 +) Sürümünüze bir 1-to-1 eşdeğer ve üçlü yapmanın daha modern bir yol olabilir eğer:
a = b is True and "123" or "456"
... veya sadece wan eğer: python için kısaltılmalıdır
a = (b == True and "123" or "456")
... t ... genelde kahvalti değerinin doğruluğuna test etmek
a = b and "123" or "456"
? :
anlamıyla deniyor and or
için takas edilebilir bir üçlü-eğer arada,. http://en.wikipedia.org/wiki/%3F :, http://en.wikipedia.org/wiki/Ternary_operation – GManNickG
... veya "koşullu ifade" –