Python คำสั่งแบบมีเงื่อนไข: IF…Else, ELIF & Switch Case
Conditional Statements คืออะไร Python?
คำชี้แจงแบบมีเงื่อนไขใน Python ทำการคำนวณหรือการดำเนินการต่างๆ ขึ้นอยู่กับว่าข้อจำกัดบูลีนเฉพาะประเมินว่าเป็นจริงหรือเท็จ คำสั่งแบบมีเงื่อนไขได้รับการจัดการโดยคำสั่ง IF ใน Python.
ความหมายของ Python หากงบ?
Python ถ้างบ ใช้สำหรับการดำเนินการตัดสินใจ ประกอบด้วยโค้ดบางส่วนที่ทำงานเมื่อเงื่อนไขที่กำหนดไว้ในคำสั่ง if เป็นจริงเท่านั้น หากเงื่อนไขเป็นเท็จ คำสั่ง else เสริมจะทำงาน ซึ่งมีโค้ดบางส่วนสำหรับเงื่อนไข else
เมื่อคุณต้องการจัดชิดขอบเงื่อนไขหนึ่งในขณะที่อีกเงื่อนไขหนึ่งไม่เป็นความจริง คุณจะต้องใช้ Python ถ้าคำสั่งอื่น
Python ถ้าไวยากรณ์คำสั่ง:
if expression Statement else Statement
Python ถ้า...อย่างอื่น ผังงาน
เรามาดูตัวอย่างกัน Python ถ้าเป็นอย่างอื่น คำชี้แจง:
# #Example file for working with conditional statement # def main(): x,y =2,8 if(x < y): st= "x is less than y" print(st) if __name__ == "__main__": main()
- รหัสบรรทัด 5: เรากำหนดตัวแปรสองตัว x, y = 2, 8
- รหัสบรรทัด 7: คำสั่ง if ใน Python ตรวจสอบสภาพ x จริง ในกรณีนี้
- รหัสบรรทัด 8: ตัวแปร st ถูกตั้งค่าเป็น "x น้อยกว่า y"
- รหัสบรรทัด 9: บรรทัดที่พิมพ์ st จะส่งออกค่าของตัวแปร st ซึ่งก็คือ "x น้อยกว่า y"
จะเกิดอะไรขึ้นเมื่อ “ถ้าเงื่อนไข” ไม่ตรงตามเงื่อนไข
ในขั้นตอนนี้เราจะดูว่าเกิดอะไรขึ้นเมื่อมีเงื่อนไข Python ไม่ตอบสนอง
- รหัสบรรทัด 5: เรากำหนดตัวแปรสองตัว x, y = 8, 4
- รหัสบรรทัด 7: คำสั่ง if ใน Python ตรวจสอบสภาพ x เท็จ ในกรณีนี้
- รหัสบรรทัด 8: ตัวแปร st คือ ไม่ ตั้งค่าเป็น "x น้อยกว่า y"
- รหัสบรรทัด 9: บรรทัดพิมพ์ st – กำลังพยายามพิมพ์ค่าของตัวแปรที่ไม่เคยประกาศ ดังนั้นเราจึงได้รับข้อผิดพลาด
วิธีใช้ “เงื่อนไขอื่น”
โดยปกติแล้ว "เงื่อนไขอื่น" จะใช้เมื่อคุณต้องตัดสินข้อความหนึ่งโดยพิจารณาจากข้อความอื่น หากเงื่อนไขหนึ่งผิด ควรมีเงื่อนไขอื่นที่ควรพิสูจน์ประโยคหรือตรรกะ
ตัวอย่าง:
# #Example file for working with conditional statement # def main(): x,y =8,4 if(x < y): st= "x is less than y" else: st= "x is greater than y" print (st) if __name__ == "__main__": main()
- รหัสบรรทัด 5: เรากำหนดตัวแปรสองตัว x, y = 8, 4
- รหัสบรรทัด 7: คำสั่ง if ใน Python ตรวจสอบสภาพ x เท็จ ในกรณีนี้
- รหัสบรรทัด 9: โฟลว์ของการควบคุมโปรแกรมไปที่เงื่อนไขอื่น
- รหัสบรรทัด 10: ตัวแปร st ถูกตั้งค่าเป็น “x คือ มากขึ้น กว่าคุณ”
- รหัสบรรทัด 11: บรรทัดที่พิมพ์ st จะส่งออกค่าของตัวแปร st ซึ่งก็คือ "x มากกว่า y"
เมื่อ “เงื่อนไขอื่น” ไม่ทำงาน
อาจมีหลายครั้งที่ “เงื่อนไขอื่น” ของคุณไม่ได้ให้ผลลัพธ์ที่ต้องการ จะพิมพ์ผลลัพธ์ที่ไม่ถูกต้องเนื่องจากมีข้อผิดพลาดในตรรกะของโปรแกรม ในกรณีส่วนใหญ่ สิ่งนี้เกิดขึ้นเมื่อคุณต้องจัดชิดขอบคำสั่งหรือเงื่อนไขมากกว่าสองรายการในโปรแกรม
An ตัวอย่าง จะช่วยให้คุณเข้าใจแนวคิดนี้ได้ดีขึ้น
ที่นี่ตัวแปรทั้งสองเหมือนกัน (8,8) และเอาต์พุตของโปรแกรมคือ “x มากกว่า y” ซึ่งเป็น ผิด- เนื่องจากจะตรวจสอบเงื่อนไขแรก (หากเงื่อนไขเข้า Python) และหากล้มเหลว ระบบจะพิมพ์เงื่อนไขที่สอง (เงื่อนไขอื่น) เป็นค่าเริ่มต้น ในขั้นตอนถัดไป เราจะมาดูกันว่าเราจะแก้ไขข้อผิดพลาดนี้ได้อย่างไร
# #Example file for working with conditional statement # def main(): x,y =8,8 if(x < y): st= "x is less than y" else: st= "x is greater than y" print(st) if __name__ == "__main__": main()
วิธีใช้เงื่อนไข “เอลฟ์”
เพื่อแก้ไขข้อผิดพลาดก่อนหน้านี้ที่เกิดจาก "เงื่อนไขอื่น" เราสามารถใช้ “เอลฟ์” คำแถลง. โดยใช้ "elif” เงื่อนไข คุณกำลังบอกให้โปรแกรมพิมพ์เงื่อนไขที่สามหรือความเป็นไปได้เมื่อเงื่อนไขอื่นผิดพลาดหรือไม่ถูกต้อง
ตัวอย่าง
# #Example file for working with conditional statement # def main(): x,y =8,8 if(x < y): st= "x is less than y" elif (x == y): st= "x is same as y" else: st="x is greater than y" print(st) if __name__ == "__main__": main()
- รหัสบรรทัด 5: เรากำหนดตัวแปรสองตัว x, y = 8, 8
- รหัสบรรทัด 7: คำสั่ง if ตรวจสอบเงื่อนไข x เท็จ ในกรณีนี้
- รหัสบรรทัด 10: โฟลว์ของการควบคุมโปรแกรมไปที่เงื่อนไข elseif ตรวจสอบว่า x==y เป็นจริงหรือไม่
- รหัสบรรทัด 11: ตัวแปร st ถูกตั้งค่าเป็น “x คือ เช่นเดียวกับที่ จ”
- รหัสบรรทัด 15: The โฟลว์ของการควบคุมโปรแกรมจะออกจากคำสั่ง if (จะไม่ไปที่คำสั่ง else) และพิมพ์ตัวแปร st ผลลัพธ์คือ "x เหมือนกับ y" ซึ่งถูกต้อง
วิธีดำเนินการคำสั่งแบบมีเงื่อนไขด้วยโค้ดขั้นต่ำ
ในขั้นตอนนี้ เราจะมาดูกันว่าเราจะย่อคำสั่งแบบมีเงื่อนไขได้อย่างไร แทนที่จะรันโค้ดสำหรับแต่ละเงื่อนไขแยกกัน เราสามารถใช้โค้ดเหล่านั้นด้วยโค้ดเดียวได้
วากยสัมพันธ์
A If B else C
ตัวอย่าง:
def main(): x,y = 10,8 st = "x is less than y" if (x < y) else "x is greater than or equal to y" print(st) if __name__ == "__main__": main()
- รหัสบรรทัด 2: เรากำหนดตัวแปรสองตัว x, y = 10, 8
- รหัสบรรทัด 3: ตัวแปร st ถูกตั้งค่าเป็น “x น้อยกว่า y” ถ้า x ตัวแปร y st ถูกตั้งค่าเป็น “x มากกว่าหรือเท่ากับ y”
- รหัสบรรทัด 4: พิมพ์ค่าของ st และให้ผลลัพธ์ที่ถูกต้อง
-
แทนที่จะเขียนโค้ดยาวๆ สำหรับคำสั่งแบบมีเงื่อนไข Python ให้อิสระแก่คุณในการเขียนโค้ดด้วยวิธีที่สั้นและกระชับ
Python ซ้อนคำสั่ง if
ตัวอย่างต่อไปนี้แสดงคำสั่ง if แบบซ้อนกัน Python
total = 100
#country = "US"
country = "AU"
if country == "US":
if total <= 50:
print("Shipping Cost is $50")
elif total <= 100:
print("Shipping Cost is $25")
elif total <= 150:
print("Shipping Costs $5")
else:
print("FREE")
if country == "AU":
if total <= 50:
print("Shipping Cost is $100")
else:
print("FREE")
ยกเลิกหมายเหตุบรรทัดที่ 2 ในโค้ดด้านบนและแสดงความคิดเห็นบรรทัดที่ 3 แล้วเรียกใช้โค้ดอีกครั้ง
สลับคำชี้แจงกรณีและปัญหาเข้า Python
คำสั่ง Switch คืออะไร?
คำสั่งสวิตช์คือคำสั่งแยกสาขาหลายทางที่เปรียบเทียบค่าของตัวแปรกับค่าที่ระบุในคำสั่ง case
Python ภาษาไม่มีคำสั่ง switch
Python ใช้พจนานุกรม การทำแผนที่เพื่อใช้ Switch Case ใน Python
ตัวอย่าง
function(argument){
switch(argument) {
case 0:
return "This is Case Zero";
case 1:
return " This is Case One";
case 2:
return " This is Case Two ";
default:
return "nothing";
};
};
สำหรับเคส Switch ข้างต้นค่ะ Python
def SwitchExample(argument):
switcher = {
0: " This is Case Zero ",
1: " This is Case One ",
2: " This is Case Two ",
}
return switcher.get(argument, "nothing")
if __name__ == "__main__":
argument = 1
print (SwitchExample(argument))
Python 2 ตัวอย่าง
รหัสข้างต้นคือ Python 3 ตัวอย่าง หากคุณต้องการรันอิน Python 2 โปรดพิจารณาโค้ดต่อไปนี้
# If Statement
#Example file for working with conditional statement
#
def main():
x,y =2,8
if(x < y):
st= "x is less than y"
print st
if __name__ == "__main__":
main()
# How to use "else condition"
#Example file for working with conditional statement
#
def main():
x,y =8,4
if(x < y):
st= "x is less than y"
else:
st= "x is greater than y"
print st
if __name__ == "__main__":
main()
# When "else condition" does not work
#Example file for working with conditional statement
#
def main():
x,y =8,8
if(x < y):
st= "x is less than y"
else:
st= "x is greater than y"
print st
if __name__ == "__main__":
main()
# How to use "elif" condition
#Example file for working with conditional statement
#
def main():
x,y =8,8
if(x < y):
st= "x is less than y"
elif (x == y):
st= "x is same as y"
else:
st="x is greater than y"
print st
if __name__ == "__main__":
main()
# How to execute conditional statement with minimal code
def main():
x,y = 10,8
st = "x is less than y" if (x < y) else "x is greater than or equal to y"
print st
if __name__ == "__main__":
main()
# Nested IF Statement
total = 100
#country = "US"
country = "AU"
if country == "US":
if total <= 50:
print "Shipping Cost is $50"
elif total <= 100:
print "Shipping Cost is $25"
elif total <= 150:
print "Shipping Costs $5"
else:
print "FREE"
if country == "AU":
if total <= 50:
print "Shipping Cost is $100"
else:
print "FREE"
#Switch Statement
def SwitchExample(argument):
switcher = {
0: " This is Case Zero ",
1: " This is Case One ",
2: " This is Case Two ",
}
return switcher.get(argument, "nothing")
if __name__ == "__main__":
argument = 1
print SwitchExample(argument)
สรุป
คำสั่งแบบมีเงื่อนไขใน Python ได้รับการจัดการโดยคำสั่ง if และเราเห็นวิธีอื่นๆ มากมายที่เราสามารถใช้คำสั่งแบบมีเงื่อนไขได้ เช่น Python ถ้าเป็นอย่างอื่นที่นี่
- “เงื่อนไข if” – ใช้เมื่อคุณต้องการพิมพ์ผลลัพธ์เมื่อมีเงื่อนไขข้อใดข้อหนึ่งเป็นจริงหรือเท็จ
- “เงื่อนไขอื่น”- ใช้เมื่อคุณต้องการพิมพ์คำสั่งเมื่อเงื่อนไขหนึ่งของคุณไม่เป็นไปตามข้อกำหนด
- “เงื่อนไขเอลฟ์” – ใช้เมื่อคุณมีความเป็นไปได้ที่สามเป็นผลลัพธ์ คุณสามารถใช้เงื่อนไข elif หลายรายการเพื่อตรวจสอบ 4 ได้th,5th,6th ความเป็นไปได้ในรหัสของคุณ
- เราสามารถใช้โค้ดขั้นต่ำเพื่อรันคำสั่งแบบมีเงื่อนไขโดยการประกาศเงื่อนไขทั้งหมดในคำสั่งเดียวเพื่อรันโค้ด
- Python ถ้า Statement สามารถซ้อนกันได้







