บทที่ 2: ตัวแปรและตัวดำเนินการ

เรียนรู้วิธีเก็บ–จัดการข้อมูล และคำนวณด้วยตัวดำเนินการ — หัวใจสำคัญของการเขียนโปรแกรม

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

คิดง่าย ๆ ว่า ตัวแปร คือ “กล่องมีป้ายชื่อ” สำหรับเก็บข้อมูล เช่น ข้อความ ตัวเลข ค่าตรรกะ ฯลฯ เรียกใช้ได้ด้วยชื่อกล่อง และเปลี่ยนค่าได้ทุกเมื่อ

ใน Python เป็น dynamic typing — ไม่ต้องประกาศชนิดล่วงหน้า ระบบอนุมานจากค่าที่กำหนด

# การสร้างตัวแปรและกำหนดค่า (=)
name = "สมชาย ใจดี"   # str
age = 25               # int
score = 95.5           # float
is_student = True      # bool

age = 26               # เปลี่ยนค่าได้
print(age)

อ่านง่าย

โค้ดกระชับ เหมาะกับผู้เริ่มต้น

ชนิดเปลี่ยนตามค่า

x=10 → int ต่อมา x="ten" → str

= vs ==

= กำหนดค่า / == เปรียบเทียบ

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

เขียนให้ถูกต้องและอ่านง่าย จะช่วยลดบั๊กและทำงานร่วมกันได้ดี

ตัวอย่างที่ถูกต้อง

  • my_variable
  • student_name
  • score1
  • _private_data

ตัวอย่างที่ผิด

  • 1st_place (ห้ามขึ้นต้นด้วยตัวเลข)
  • student-name (ห้ามมีขีดกลาง)
  • for (เป็นคำสงวน)
  • my variable (ห้ามมีเว้นวรรค)

ตัวดำเนินการ (Operators)

ตัวดำเนินการ คือสัญลักษณ์ที่ใช้กับตัวแปร/ข้อมูล เช่น คำนวณ เปรียบเทียบ หรือกำหนดค่า

1) คณิตศาสตร์ (Arithmetic)

ใช้คำนวณทั่วไป

ตัวดำเนินการ ความหมาย ตัวอย่าง ผลลัพธ์
+ บวก 10 + 5 15
- ลบ 10 - 5 5
* คูณ 10 * 5 50
/ หาร (ผล float) 10 / 4 2.5
// หารปัดเศษ 10 // 4 2
% เศษจากหาร 10 % 3 1
** ยกกำลัง 2 ** 3 8

2) เปรียบเทียบ (Comparison)

ให้ผลเป็น True หรือ False

ตัวดำเนินการ ความหมาย ตัวอย่าง ผลลัพธ์
== เท่ากับ 5 == 5 True
!= ไม่เท่ากับ 5 != 3 True
> มากกว่า 5 > 3 True
< น้อยกว่า 5 < 3 False
>= มากกว่าหรือเท่ากับ 5 >= 5 True
<= น้อยกว่าหรือเท่ากับ 5 <= 3 False

3) กำหนดค่า (Assignment)

รูปแบบย่อช่วยให้โค้ดสั้นลง

ตัวดำเนินการ ตัวอย่าง ความหมายเดียวกับ
= x = 5 x = 5
+= x += 3 x = x + 3
-= x -= 3 x = x - 3
*= x *= 3 x = x * 3
/= x /= 3 x = x / 3

ตัวอย่างการประยุกต์ใช้งานจริง

การใช้ตัวแปรและตัวดำเนินการร่วมกัน เพื่อแก้ปัญหาในชีวิตจริง

ตัวอย่างที่ 1: คำนวณราคาสินค้า

รวมราคาสินค้า 2 รายการ และคำนวณภาษีมูลค่าเพิ่ม 7%

# ค่าเริ่มต้น
item1_price = 150.0
item2_price = 300.5
vat_rate = 0.07

subtotal = item1_price + item2_price
print(f"ก่อนภาษี: {subtotal} บาท")

vat = subtotal * vat_rate
print(f"ภาษี 7%: {vat} บาท")

total_price = subtotal + vat
print(f"ราคาสุทธิ: {total_price} บาท")

ตัวอย่างที่ 2: ต่อข้อความ (String Concatenation)

ใช้ + เชื่อมข้อความหลายส่วนเข้าด้วยกัน

first_name = "อลิซ"
last_name = "ชอบเรียน"
age = 18
sentence = "สวัสดี, ฉันชื่อ " + first_name + " " + last_name + " อายุ " + str(age) + " ปี"
print(sentence)

ตัวอย่างที่ 3: ตรวจสอบเงื่อนไขอายุเข้าชม

อายุ ≥ 15 จึงเข้าชมได้

viewer_age = 17
minimum_age = 15
can_watch = viewer_age >= minimum_age
print("สามารถเข้าชมหรือไม่?:", can_watch)

แบบฝึกหัดตรวจอัตโนมัติ

ข้อ 1) พื้นที่สี่เหลี่ยมผืนผ้า

ให้กรอก length และ width แล้วคำนวณ area = length * width
เฉลย: area = length * width

ข้อ 2) โอเปอเรชันพื้นฐาน (int)

ให้กรอกจำนวนเต็ม a, b แล้วหาค่า: a+b, a-b, a*b, a//b, a%b
เฉลย: คำนวณจาก a, b ตามนิยามโอเปอเรชัน

ข้อ 3) แปลงอุณหภูมิ C ➜ F

สูตร: F = C * 9/5 + 32 (ยอมรับ ±0.01)
เฉลย: คำนวณ F จาก C ด้วยสูตรข้างต้น

ข้อ 4) ผ่าน/ไม่ผ่าน (bool)

คะแนนเต็ม 100 แสดง True เมื่อ score ≥ 50 มิฉะนั้น False
เฉลย: เงื่อนไข score >= 50