เงื่อนไข if … else ในภาษา Python

ใช้สำหรับตรวจสอบเงื่อนไขในการเลือกทำงานของโปรแกรม โดยเงื่อนไขจะเป็นการตรวจสอบค่าจากตัวแปรหรือค่าคงที่ว่าตรงตามเงื่อนไขที่กำหนดหรือไม่ แล้วจึงเลือกทำงานตามส่วนที่ต้องการ ในภาษา Python เงื่อนไข If … Else จะมีรูปแบบดังนี้

if expression:
    statement(s)
else:
    statement(s)

โดยจะมี expression เป็นเงื่อนไขที่ต้องการตรวจสอบ ถ้าเงื่อนไขเป็นจริงจะทำงานใน statement(s) ในบรรทัดถัดไป ถ้าเงื่อนไขไม่เป็นจริงจะทำงานใน statement(s) ของ else ในบรรทัดถัดไป

ตัวอย่าง การใช้งาน If … Else statement ใน Python:

x = 5
if x > 10:
    print("x มากกว่า 10")
else:
    print("x น้อยกว่าหรือเท่ากับ 10")

ผลลัพธ์ที่ได้จะเป็น “x น้อยกว่าหรือเท่ากับ 10” เนื่องจากค่าตัวแปร x เท่ากับ 5 ซึ่งไม่มากกว่า 10 ตามเงื่อนไขที่กำหนดใน If statement ดังนั้นโปรแกรมจะทำงานใน Else statement ในบรรทัดถัดไปแทน

num = 10

# Check if the number is positive
if num > 0:
    print("Number is positive")
else:
    print("Number is not positive")

จากตัวอย่างนี้ เราใช้ if … else เพื่อตรวจสอบว่าตัวเลข num มีค่ามากกว่า 0 หรือไม่ ถ้า num มากกว่า 0 จะพิมพ์ “Number is positive” แต่ถ้า num ไม่มากกว่า 0 จะพิมพ์ “Number is not positive”

เรายังสามารถใช้ if … else ในการกำหนดค่าตัวแปรตามเงื่อนไขได้ด้วย ดังนี้:

# Set x to 'positive' if num is positive, otherwise set it to 'not positive'
x = 'positive' if num > 0 else 'not positive'
print(x)

จากตัวอย่างนี้ ถ้า num มากกว่า 0 ค่าของตัวแปร x จะเป็น ‘positive’ แต่ถ้า num ไม่มากกว่า 0 ค่าของตัวแปร x จะเป็น ‘not positive’

If … Else หลายเงื่อนไข

ในภาษา Python สามารถเขียนเงื่อนไข If … Else หลายเงื่อนไขได้ด้วยการใช้คำสั่ง if ซ้อน if หรือเรียกว่า Nested if statement ดังนี้

x = 10
y = 5
z = 2

if x > y:
    if x > z:
        print("x is the largest number")
    else:
        print("z is the largest number")
else:
    if y > z:
        print("y is the largest number")
    else:
        print("z is the largest number")

จากตัวอย่างนี้ จะตรวจสอบว่าตัวเลขใดเป็นค่ามากที่สุดระหว่าง x, y, และ z และพิมพ์ผลลัพธ์ที่เกี่ยวข้อง

ในตัวอย่างนี้เงื่อนไข if นอกจากการตรวจสอบว่า x มีค่ามากกว่า y แล้วยังมีเงื่อนไข if ซ้อนอยู่ภายในเพื่อตรวจสอบว่า x มีค่ามากกว่า z หรือไม่ ถ้าใช่ก็พิมพ์ว่า x เป็นตัวเลขที่มากที่สุด ถ้าไม่ใช่ก็เข้าเงื่อนไข else ซึ่งจะพิมพ์ว่า z เป็นตัวเลขที่มากที่สุด

ในกรณีที่เงื่อนไข if นอกไม่เป็นจริง จะเข้าสู่เงื่อนไข else ซึ่งจะตรวจสอบเงื่อนไขต่อไป ว่าตัวเลขใดมีค่ามากที่สุดระหว่าง y และ z แล้วพิมพ์ผลลัพธ์ที่เกี่ยวข้อง

ในกรณีที่ตัวเลขทั้งสามมีค่าเท่ากัน ผลลัพธ์จะถูกพิมพ์ว่า z เป็นตัวเลขที่มากที่สุด

คำสั่ง if ซ้อน if สามารถถูกซ้อนกันได้หลายชั้นตามความต้องการและข้อจำกัดของโปรแกรม