Python สำหรับมือใหม่ #2: ตัวแปร ชนิดข้อมูล เงื่อนไข และ loop
·~3 นาที
แก้ไขล่าสุดเมื่อ

Python สำหรับมือใหม่ #2: ตัวแปร ชนิดข้อมูล เงื่อนไข และ loop


ใน Part 1 เรารู้จักแล้วว่า Python คืออะไร และเตรียมตัวอะไรมาแล้ว คราวนี้ถึงเวลา เขียนโค้ดจริง สิครับ เราจะเริ่มจากพื้นฐานที่ทุกภาษาต้องมี: ตัวแปร ชนิดข้อมูล เงื่อนไข และการทำซ้ำ (loop)


ตัวแปร (Variable) คืออะไร?

ตัวแปรคือ กล่องที่เก็บข้อมูล คุณตั้งชื่อให้กล่องนั้น แล้วใส่ค่าลงไป Python จะเดาชนิดข้อมูลให้เอง ไม่ต้องประกาศแบบภาษาอื่น

name = "lynn" # เก็บข้อความ
age = 25 # เก็บตัวเลข
height = 1.72 # เก็บทศนิยม
is_student = False # เก็บจริง/เท็จ (True/False)

กฎการตั้งชื่อตัวแปร:

  • ใช้ตัวอักษร a-z, A-Z, ตัวเลข และ _ เท่านั้น
  • ห้ามขึ้นต้นด้วยตัวเลข (1name ผิด, name1 ถูก)
  • ห้ามใช้คำสงวนของภาษา เช่น if, for, class
  • ตั้งชื่อให้สื่อความหมาย จะดีกว่า x, tmp

ลองพิมพ์ดู:

name = "lynn"
print("สวัสดีครับ", name)
ผลลัพธ์
สวัสดีครับ lynn

ชนิดข้อมูล (Data Types) พื้นฐาน

Python มีชนิดข้อมูลหลักที่ควรรู้ 4 ตัว:

ชนิด ตัวอย่าง อธิบาย
str (ข้อความ) "สวัสดี" ครอบด้วย "" หรือ ''
int (จำนวนเต็ม) 42 ไม่มีทศนิยม
float (ทศนิยม) 3.14 มีจุดทศนิยม
bool (จริง/เท็จ) True / False ใช้ในเงื่อนไข

เช็คชนิดข้อมูลด้วย type():

print(type(42))
print(type("42"))
print(type(3.14))
ผลลัพธ์
<class 'int'>
<class 'str'>
<class 'float'>

แปลงชนิดข้อมูล (Casting) เวลารับค่าจากผู้ใช้มักได้เป็นข้อความ ต้องแปลงก่อนคำนวณ:

age = input("อายุคุณเท่าไหร่: ") # ได้เป็น str เสมอ
age = int(age) # แปลงเป็น int
print("ปีหน้าคุณจะ", age + 1, "ปี")
ผลลัพธ์
อายุคุณเท่าไหร่: 25
ปีหน้าคุณจะ 26 ปี

โครงสร้างควบคุม: if / elif / else

ใช้ตัดสินใจว่า “ถ้าเงื่อนไขเป็นจริง ให้ทำอะไร” สังเกตว่าหลัง if ต้องมีเครื่องหมาย : และ บล็อกโค้ดย่อเข้าย่อหน้า (indent) — นี่คือจุดที่มือใหม่สะดุดบ่อย เพราะ Python ใช้ช่องว่างแทนปีกกา { }

score = 85
if score >= 80:
print("เกรด A")
elif score >= 70:
print("เกรด B")
elif score >= 60:
print("เกรด C")
else:
print("ต้องติวเพิ่ม")
ผลลัพธ์
เกรด A

ตัวดำเนินการที่ใช้บ่อย:

  • == เท่ากับ, != ไม่เท่ากับ
  • > < >= <= เปรียบเทียบ
  • and or not นำเงื่อนไขมารวมกัน
if age >= 18 and is_student:
print("เป็นนักศึกษาผู้ใหญ่แล้ว")

การทำซ้ำ (Loop)

for loop — วนลูปตามรายการ

fruits = ["แอปเปิ้ล", "กล้วย", "ส้ม"]
for fruit in fruits:
print("ฉันชอบ", fruit)
ผลลัพธ์
ฉันชอบ แอปเปิ้ล
ฉันชอบ กล้วย
ฉันชอบ ส้ม

ใช้ range() สร้างลำดับตัวเลข:

for i in range(5): # 0,1,2,3,4
print("รอบที่", i + 1)
ผลลัพธ์
รอบที่ 1
รอบที่ 2
รอบที่ 3
รอบที่ 4
รอบที่ 5

while loop — ทำซ้ำตราบใดที่เงื่อนไขเป็นจริง

count = 0
while count < 3:
print("นับ", count)
count = count + 1 # อย่าลืมเปลี่ยนค่า ไม่งั้นลูปไม่จบ (infinite loop)
ผลลัพธ์
นับ 0
นับ 1
นับ 2

ลองรวมกัน: ตัวอย่างจริง

โปรแกรมเล็กๆ ที่รับอายุแล้วบอกว่าเป็นวัยไหน พร้อมนับถอยหลัง:

name = input("ชื่อของคุณ: ")
age = int(input("อายุ: "))
if age < 13:
group = "เด็ก"
elif age < 20:
group = "วัยรุ่น"
else:
group = "ผู้ใหญ่"
print(f"{name} เป็น{group}")
print("นับถอยหลัง:")
for i in range(age, age - 3, -1):
print(i)
ผลลัพธ์
ชื่อของคุณ: lynn
อายุ: 25
lynn เป็นผู้ใหญ่
นับถอยหลัง:
25
24
23

สังเกต f"..." คือ f-string — ใส่ตัวแปรลงในข้อความด้วย { } ได้เลย สะดวกกว่าเติมทีละท่อน


สรุป

Part 2 นี้คุณได้เขียนโค้ดจริงแล้ว:

  • ตัวแปร เก็บข้อมูลและตั้งชื่อให้สื่อความหมาย
  • ชนิดข้อมูล str int float bool และการแปลง type
  • if/elif/else ตัดสินใจ โดยย่อหน้าโค้ดด้วย indent
  • for / while ทำซ้ำได้ทั้งตามรายการและตามเงื่อนไข

ใน Part 3 เราจะไปต่อที่ ฟังก์ชัน (function) การนำโค้ดมาจัดเป็นก้อน reusable และ list/dictionary ที่จะทำให้จัดการข้อมูลหลายตัวง่ายขึ้น

ติดตามต่อใน Part 3 นะครับ

บทความที่เกี่ยวข้อง