ฉันมักจะพบว่าตัวเองกำลังเขียนถ้า / elif / else สร้างใน python และฉันต้องการที่จะรวมตัวเลือกที่สามารถเกิดขึ้นได้ แต่สิ่งที่การกระทำที่สอดคล้องกันคือการไม่ทำอะไรเลย ฉันรู้ว่าฉันสามารถแยกคำสั่งเหล่านั้นออกมาได้ แต่เพื่อความสะดวกในการอ่านฉันพบว่ามันช่วยให้พวกเขารวมทั้งหมดดังนั้นหากคุณกำลังดูรหัสคุณสามารถเห็นสิ่งที่เกิดขึ้นอันเป็นผลมาจากแต่ละตัวเลือก ฉันจะรหัสไม่มีการใช้งานได้อย่างไร ขณะนี้ฉันทำเช่นนี้:
no_op = 0
if x == 0:
y = 2 * a
elif x == 1:
z = 3 * b
elif x == 3:
no_op
(รหัสจริงค่อนข้างยาวกว่านั้นเล็กน้อยและซับซ้อนกว่านี้เป็นเพียงเพื่อแสดงโครงสร้าง)
ฉันไม่ชอบการใช้ตัวแปรเป็นแบบไม่มีตัวเลือก แต่เป็นวิธีที่ประณีตที่สุดที่ฉันสามารถนึกได้ มีวิธีที่ดีกว่า?
...) นี้สมควรได้รับการกล่าวถึง: stackoverflow.com/a/6189281/38281