Jython - การควบคุมการตัดสินใจ
โครงสร้างการตัดสินใจมีเงื่อนไขอย่างน้อยหนึ่งเงื่อนไขที่จะต้องได้รับการประเมินหรือทดสอบโดยโปรแกรมพร้อมกับคำสั่งหรือคำสั่งที่จะดำเนินการหากเงื่อนไขถูกกำหนดให้เป็นจริงและเป็นทางเลือกที่จะเรียกใช้คำสั่งอื่น ๆ หากเงื่อนไข ถูกกำหนดให้เป็นเท็จ
ภาพประกอบต่อไปนี้แสดงรูปแบบทั่วไปของโครงสร้างการตัดสินใจทั่วไปที่พบในภาษาโปรแกรมส่วนใหญ่ -
Jython ไม่ใช้วงเล็บปีกกาเพื่อระบุบล็อกของคำสั่งที่จะดำเนินการเมื่อเงื่อนไขเป็นจริงหรือเท็จ (เช่นเดียวกับใน Java) แต่จะใช้การเยื้องสม่ำเสมอ (ช่องว่างจากขอบด้านซ้าย) เพื่อสร้างบล็อกของคำสั่ง บล็อกที่เยื้องสม่ำเสมอดังกล่าวทำให้โค้ดเงื่อนไขถูกดำเนินการเมื่อเงื่อนไขที่กำหนดในคำสั่ง 'if' เป็นจริง
อาจมีบล็อกที่คล้ายกันอยู่หลังคำสั่ง "else" ซึ่งเป็นทางเลือก Jython ยังมีไฟล์elif statementโดยใช้เงื่อนไขต่อเนื่องที่สามารถทดสอบได้ ที่นี่else clauseจะปรากฏเป็นครั้งสุดท้ายและจะดำเนินการต่อเมื่อเงื่อนไขก่อนหน้าทั้งหมดล้มเหลว ไวยากรณ์ทั่วไปของการใช้if..elif..else มีดังนี้
if expression1:
statement(s)
elif expression2:
statement(s)
elif expression3:
statement(s)
else:
statement(s)
ในตัวอย่างต่อไปนี้ถ้า ..elif ..else โครงสร้างใช้ในการคำนวณส่วนลดสำหรับค่าต่างๆของจำนวนเงินที่ป้อนโดยผู้ใช้
discount = 0
amount = input("enter Amount")
if amount>1000:
discount = amount*0.10
elif amount>500:
discount = amount*0.05
else:
discount = 0
print 'Discount = ',discount
print 'Net amount = ',amount-discount
ผลลัพธ์ของโค้ดด้านบนจะเป็นดังที่แสดงด้านล่าง
enter Amount1500
Discount = 150.0
Net amount = 1350.0
enter Amount600
Discount = 30.0
Net amount = 570.0
enter Amount200
Discount = 0
Net amount = 200