โครงสร้าง match-case ใน Python
ใน Python เริ่มจากเวอร์ชัน 3.10
มีโครงสร้างพิเศษ match-case,
ซึ่งใช้สำหรับเลือกค่าใดค่าหนึ่ง
จากชุดค่าบางชุด ไวยากรณ์ของมันคือ:
match varuable:
case 'value1':
'''
นี่คือโค้ดที่จะถูกดำเนินการ
ถ้าตัวแปรมีค่าเป็น 1
'''
case 'value2'
'''
นี่คือโค้ดที่จะถูกดำเนินการ
ถ้าตัวแปรมีค่าเป็น 2
'''
case _:
'''
นี่คือโค้ดที่จะถูกดำเนินการ
ถ้าค่าไม่ตรงกับใดๆ
'''
สมมติว่าเรามีตัวแปร tst:
tst = 'a'
มาเขียนเงื่อนไขสำหรับตัวเลือกต่างๆ ที่ตัวแปรสามารถรับได้:
match tst:
case 'a':
print('a')
case 'b':
print('b')
case _:
print('tst is unknown')
นอกจากนี้ โดยใช้ตัวดำเนินการ | สามารถ
ระบุชุดค่าที่ต้องการในแต่ละกรณีได้:
match tst:
case 'a' | 'c':
print('a or c')
case 'b' | 'd':
print('b or d')
case _:
print('tst is unknown')
สมมติว่าในตัวแปร num เก็บไว้
ตัวเลขหนึ่งตัว: 1, 2, 3
หรือ 4 ซึ่งบรรจุหมายเลขฤดู
แสดงชื่อฤดูที่บรรจุอยู่ในตัวเลขนั้น
สมมติว่าในตัวแปร num เก็บไว้
หมายเลขเดือนตั้งแต่ 1 ถึง 12
แสดงชื่อฤดูที่สอดคล้องกับเดือนนั้น