ในบทนี้เราจะมาทำความเข้าใจเรื่องเงื่อนไข (Condition) กันครับ ซึ่งการเขียนโค้ดนั้น เงื่อนไขเป็นสิ่งจำเป็นมากๆ ครับ เพื่อที่จะทำให้โค้ดทำงานได้ถูกต้องในแต่ละกรณีที่แตกต่างกัน

เงื่อนไข

เงื่อนไขหรือ Condition คือ การกำหนดคำสั่งหรือโค้ดชุดต่อไปให้ทำงานแตกต่างกันในแต่ละกรณี เช่น

  • ถ้า a เท่ากับ b เราจะเพิ่มค่าให้ a
  • แต่ถ้า a ไม่เท่ากับ b เราจะเพิ่มค่าให้ b

จะเห็นว่าทั้งสองกรณี ตามมาด้วยคำสั่งที่ต่างกัน ซึ่งการเขียนโค้ดปกติจะเจอเงื่อนไขเหล่านี้เป็นประจำ

If Condition

If condition คือ ถ้าเงื่อนไขเป็นจริง ให้โค้ดทำงานใน block คำสั่งของ if เพิ่ม แล้วค่อยทำงานต่อ แต่ถ้าไม่จริงให้ข้ามชุดคำสั่งใน block ของ if แล้วไปทำงานต่อได้เลย มาดูตัวอย่างเพื่อความเข้าใจเพิ่มเติมกันครับ

a = 33
b = 200
if b > a:
  a = a + 1
  print("b is greater than a")
print(a)
print(b)

จากคำสั่งด้านบน เงื่อนไขใน if condition เป็นจริง เพราะ b มากกว่า a ทำให้มีการทำงานใน block คำสั่งของ if เพิ่ม คือมีการเพิ่มค่าให้ตัวแปร a และมีการแสดงค่าข้อความ  “b is greater than a” ออกมา ก่อนที่จะทำงานต่อไป คือการแสดงค่า a และ b ออกมา

"b is greater than a"
34
200

ในกรณีตรงข้าม ถ้าเราแก้ค่าตัวแปร a เป็น 300

a = 300
b = 200
if b > a:
  a = a + 1
  print("b is greater than a")
print(a)
print(b)

เงื่อนไขจะเป็นเท็จ เพราะ b ไม่ได้มีค่ามากกว่า a ทำให้ block คำสั่งของ if  ไม่ถูกทำงาน  ค่าข้อความ  “b is greater than a”  และการเพิ่มค่าของ a จึงไม่ถูกทำงานครับ จะข้ามไปทำงานชุดคำสั่งหลัง block คำสั่งของ if คือการแสดงค่า a และ b ออกมา

300
200

Indentation

ในภาษา Python เมื่อมีเงื่อนไข If เราจะต้องตามด้วย block ของคำสั่ง ซึ่ง block ของคำสั่งจำเป็นต้องย่อหน้าเข้าไป (tab) หรือ indent เข้าไป 1 ครั้ง จากตัวอย่างคำสั่งที่ผ่านมาจะเห็นว่าคำสั่งทั้ง 2 คำสั่งใน block ของ if จะมีการ indent เข้าไป

a = 300
b = 200
if b > a:
  a = a + 1 //ย่อหน้าเข้ามา
  print("b is greater than a") //ย่อหน้าเข้ามา
print(a)
print(b)

ซึ่งหากไม่มีการ indent หรือย่อหน้าตามหลังคำสั่งเงื่อนไข if แล้ว โปรแกรมจะ Error ครับ

a = 300
b = 200
if b > a:
a = a + 1
print("b is greater than a")
print(a)
print(b)

ผลจากการรันคำสั่งจะได้เป็น

IndentationError: expected an indented block (prog.py, line 4)

คอร์ส Python for Kids

สอบถามข้อมูลและรายละเอียดเพิ่มเติมได้ทาง เฟสบุ๊ค คิดกับโค้ด

หรือกดแชทที่ด้าน (ขวา) ล่างของเว็บไซต์เพื่อแชท

ทางทีมงานจะรีบตอบกลับให้เร็วที่สุดครับ ขอบคุณทุกท่านมากครับ

Leave a Reply

Your email address will not be published. Required fields are marked *