ตัวดำเนินการเงื่อนไขแบบเทอร์นารีใน Python
สมมติว่าเรามีตัวแปรสองตัว:
tst1 = 5
tst2 = 10
ลองตรวจสอบว่าตัวแปรใดมีค่ามากกว่าและ แสดงข้อความที่เกี่ยวข้อง:
if tst1 > tst2:
print('+++')
else:
print('---')
อย่างไรก็ตาม เงื่อนไขนี้สามารถเขียนใน รูปแบบที่สั้นลงได้โดยใช้ ตัวดำเนินการเงื่อนไขแบบเทอร์นารี
ไวยากรณ์ของมันมีลักษณะดังนี้:
'ข้อความหากเงื่อนไข 1 เป็นจริง' if condition else 'ข้อความหากเงื่อนไข 1 เป็นเท็จ'
ลองเขียนเงื่อนไขใหม่โดยใช้ตัวดำเนินการเทอร์นารี:
print('+++' if tst1 > tst2 else '---')
ควรใช้ตัวดำเนินการเทอร์นารีเฉพาะใน กรณีที่ง่ายที่สุดเท่านั้น เนื่องจากการใช้งานมัน ทำให้เข้าใจโค้ดได้ยากขึ้น
ให้โค้ดต่อไปนี้:
tst = 12
if tst > 0:
print('+++')
else:
print('---')
เขียนโค้ดใหม่โดยใช้ตัวดำเนินการเทอร์นารี
ให้โค้ดต่อไปนี้:
tst = 'abcde'
if 'a' in tst:
print('+++')
else:
print('---')
เขียนโค้ดใหม่โดยใช้ตัวดำเนินการเทอร์นารี