ชุดที่ 3 การเขียนโปรแกรมภาษา Python
✍️ ฝึกทำ เห็นผลทันทีเมื่อส่ง
ชุดนี้สำหรับผู้ที่มีสิทธิ์ชุดข้อสอบนี้
ซื้อชุดตะลุยข้อสอบ หรือคอร์สติวที่รวมชุดนี้ไว้ เพื่อทำได้ไม่จำกัด
รายละเอียดชุดนี้
ชุดนี้ครอบคลุมพื้นฐานภาษา Python ชนิดข้อมูล ตัวดำเนินการ สตริง ลิสต์ ทูเพิล ดิกชันนารี เซต โครงสร้างควบคุม ฟังก์ชัน ขอบเขตตัวแปร การจัดการข้อผิดพลาด และไลบรารีที่ใช้บ่อย เน้นการไล่โค้ดหาผลลัพธ์แบบข้อสอบจริง
ซีรีส์ตะลุยข้อสอบครูผู้ช่วย เอกคอมพิวเตอร์ 2569 • exammvp.com
สรุปก่อนทำข้อสอบ
พื้นฐานภาษา Python
- ภาษาระดับสูง ทำงานผ่านอินเทอร์พรีเตอร์ · Dynamic Typing (ไม่ต้องประกาศชนิดตัวแปร) · บล็อกคำสั่งกำหนดด้วย การย่อหน้า (มาตรฐาน 4 ช่องว่าง)
- ชื่อตัวแปร: ตัวอักษร ตัวเลข และ _ ห้ามขึ้นต้นด้วยตัวเลข ห้ามมีขีด - ห้ามใช้คำสงวน เช่น class, if, for
- PEP 8: snake_case สำหรับตัวแปร/ฟังก์ชัน · PascalCase สำหรับคลาส · UPPER_CASE สำหรับค่าคงที่
- input() คืนค่าเป็น สตริงเสมอ ต้องแปลงด้วย int() หรือ float() ก่อนคำนวณ
ตัวดำเนินการ
- / ได้ float เสมอ · // หารปัดลงไปทางลบอนันต์ · % เศษ → -7 // 2 = -4 และ -7 % 2 = 1
- คูณ หาร มาก่อนบวก ลบ และทำจากซ้ายไปขวา · เปรียบเทียบต่อกันได้ เช่น 1 < 3 > 2
- and / or คืน "ค่าของตัวถูกดำเนินการ" แบบ short-circuit · ค่าที่เป็นเท็จ: 0, 0.0, "", [], {}, None (สตริง "False" และ " " เป็นจริง)
สตริงและลิสต์
- ดัชนีเริ่มที่ 0 · ดัชนีลบนับจากท้าย · slicing [start:stop:step] ไม่รวม stop
- สตริงเปลี่ยนแปลงไม่ได้ (immutable) · len("สวัสดี") = 6 เพราะนับรหัสอักขระรวมสระบน/ล่าง
- append เพิ่ม 1 สมาชิก · extend เพิ่มทีละตัว · b = a คือชื่อเรียกอีกชื่อของลิสต์เดิม (alias) · a[:] คัดลอก · a = a + [x] สร้างลิสต์ใหม่
- list.sort() เรียงในที่และคืน None · sorted() คืนลิสต์ใหม่ · key=len เรียงตามความยาว
- range(start, stop, step) ไม่รวม stop · enumerate(…, start=1) · zip หยุดที่ลิสต์ที่สั้นที่สุด
โครงสร้างควบคุมและฟังก์ชัน
- break ออกจากลูป · continue ข้ามไปรอบถัดไป · for…else: ส่วน else ทำงานเมื่อลูปจบโดย ไม่เกิด break
- ฟังก์ชันที่ไม่มี return คืนค่า None · พารามิเตอร์มีค่าเริ่มต้นและเรียกด้วยชื่อได้
- กับดัก Mutable Default: ลิสต์ที่เป็นค่าเริ่มต้นถูกสร้างครั้งเดียวและใช้ร่วมกันทุกการเรียก
- กำหนดค่าตัวแปรภายในฟังก์ชันทำให้ตัวแปรนั้นเป็น local ทั้งฟังก์ชัน → UnboundLocalError (แก้ด้วย global หรือส่งพารามิเตอร์)
โครงสร้างข้อมูลในตัว
| ชนิด | ลักษณะสำคัญ |
|---|---|
| list [ ] | เรียงลำดับ แก้ไขได้ ซ้ำได้ |
| tuple ( ) | เรียงลำดับ แก้ไขไม่ได้ |
| dict {คีย์: ค่า} | คีย์ไม่ซ้ำ · d["x"] ไม่มีคีย์ → KeyError · d.get("x", 0) คืนค่าเริ่มต้น |
| set { } | ไม่ซ้ำ ไม่เรียงลำดับ · & ส่วนร่วม · ยูเนียนใช้เครื่องหมายขีดตั้ง |
ข้อผิดพลาดที่ออกบ่อย
- SyntaxError (if x = 5:) · IndentationError · NameError · TypeError ("5" + 3, แก้ไขตัวอักษรในสตริง) · ValueError (int("12a")) · IndexError · KeyError · ZeroDivisionError · UnboundLocalError
- try–except–finally: finally ทำงาน เสมอ แม้มี return
- โหมดไฟล์: "r" อ่าน · "w" เขียนทับ · "a" ต่อท้าย · with open(…) ปิดไฟล์ให้อัตโนมัติ
- math.floor ปัดลง · math.ceil ปัดขึ้น · math.sqrt คืน float · random.randint(a, b) รวมทั้ง a และ b