การเขียนโปรแกรมไม่ใช่แค่การเก็บค่าไว้เฉยๆ ครับ แต่คือการนำค่าเหล่านั้นมาคำนวณและตัดสินใจ ในภาษา Python มีตัวดำเนินการที่แบ่งเป็นกลุ่มใหญ่ๆ ที่เราต้องใช้บ่อยที่สุดดังนี้ครับ
1. ตัวดำเนินการทางคณิตศาสตร์ (Arithmetic Operators)
คือเครื่องมือที่เราใช้คำนวณตัวเลขเหมือนเครื่องคิดเลขเลยครับ แต่จะมีสัญลักษณ์บางอย่างที่พิเศษกว่าปกตินิดหน่อย
ตารางสรุปการคำนวณ
| ตัวดำเนินการ | ความหมาย | ตัวอย่าง | ผลลัพธ์ |
|---|---|---|---|
+ |
บวก | 10 + 5 |
15 |
- |
ลบ | 10 - 5 |
5 |
* |
คูณ | 10 * 5 |
50 |
/ |
หาร (ได้ทศนิยม) | 10 / 3 |
3.333... |
// |
หารปัดเศษทิ้ง (Integer Division) | 10 // 3 |
3 |
% |
หารเอาเศษ (Modulo) | 10 % 3 |
1 |
** |
ยกกำลัง | 2 ** 3 |
8 |
💡 Note สำหรับมือใหม่: ตัว % (Modulo) มีประโยชน์มากในงานโปรแกรมมิ่ง เช่น การเช็กว่าเป็นเลขคู่หรือเลขคี่ (ถ้าเลขนั้น % 2 แล้วเหลือเศษ 0 แสดงว่าเป็นเลขคู่นั่นเองครับ)
2. ตัวดำเนินการเปรียบเทียบ (Comparison Operators)
กลุ่มนี้จะใช้เปรียบเทียบค่า 2 ค่า และผลลัพธ์ที่ได้จะเป็น Boolean (True หรือ False) เท่านั้น ซึ่งสำคัญมากในการเขียนเงื่อนไข (If-Else) ในบทถัดไปครับ
| ตัวดำเนินการ | ความหมาย | ตัวอย่าง |
|---|---|---|
== |
เท่ากับ | 5 == 5 (True) |
!= |
ไม่เท่ากับ | 5 != 3 (True) |
> |
มากกว่า | 10 > 5 (True) |
< |
น้อยกว่า | 2 < 1 (False) |
>= |
มากกว่าหรือเท่ากับ | 10 >= 10 (True) |
<= |
น้อยกว่าหรือเท่ากับ | 8 <= 5 (False) |
3. ตัวดำเนินการทางตรรกศาสตร์ (Logical Operators)
ใช้สำหรับเชื่อมเงื่อนไขหลายๆ อันเข้าด้วยกันครับ
and(และ): ต้องเป็นจริง "ทั้งคู่" ถึงจะให้ผลเป็นTrueor(หรือ): เป็นจริง "แค่อันเดียว" ก็ให้ผลเป็นTruenot(ไม่): กลับค่าจากจริงเป็นเท็จ จากเท็จเป็นจริง
is_admin = True
is_logged_in = False
print(is_admin and is_logged_in) # ผลลัพธ์: False (เพราะไม่จริงทั้งคู่)
print(is_admin or is_logged_in) # ผลลัพธ์: True (เพราะมี admin เป็นจริง)
4. ตัวดำเนินการกำหนดค่าแบบย่อ (Assignment Operators)
สำหรับสาย Web Dev ที่ต้องเขียนโค้ดให้สั้นและกระชับ เรามักจะใช้การเขียนแบบย่อเพื่ออัปเดตค่าตัวแปรครับ
Blockquote: "แทนที่จะเขียน x = x + 5 เราสามารถเขียนสั้นๆ ได้ว่า x += 5 ซึ่งให้ผลลัพธ์เหมือนกันแต่ดูโปรกว่าเยอะครับ!"
ลองทำ Workshop เล็ก ๆ กันครับ
สมมติว่าคุณกำลังทำระบบตะกร้าสินค้า (E-commerce) ลองรันโค้ดนี้ดูครับ:
price_per_unit = 250
quantity = 3
shipping_fee = 50
discount_code = "DIS100"
# คำนวณราคาสินค้าทั้งหมด
subtotal = price_per_unit * quantity
# เช็กว่าต้องเสียค่าส่งไหม (ถ้าซื้อครบ 1000 ส่งฟรี)
is_free_shipping = subtotal >= 1000
# แสดงผลการคำนวณ
print(f"ราคาสินค้า: {subtotal} บาท")
print(f"ได้ส่งฟรีหรือไม่: {is_free_shipping}")
# อัปเดตราคาโดยหักส่วนลด 100 บาทแบบย่อ
subtotal -= 100
print(f"ราคาสุทธิหลังใช้ส่วนลด: {subtotal} บาท")
สรุป
ตัวดำเนินการ (Operators) คือเครื่องมือที่เปลี่ยนจากข้อมูลนิ่งๆ ให้กลายเป็นการคำนวณที่มีชีวิต บทนี้อาจจะดูเหมือนคณิตศาสตร์นิดหน่อย แต่เชื่อเถอะครับว่านี่คืออาวุธหลักที่คุณจะได้ใช้ในทุกๆ โปรเจกต์แน่นอน