Python Modules & Packages - จัดระเบียบโค้ดให้เป็นสัดส่วน

Last updated: January 24, 2026

เมื่อโปรเจกต์ของคุณใหญ่ขึ้น การเขียนทุกอย่างไว้ในไฟล์เดียวจะกลายเป็นฝันร้ายทันทีครับ Module (โมดูล) คือทางออกที่จะช่วยให้เราแบ่งโค้ดออกเป็นไฟล์ย่อยๆ ตามหน้าที่ของมัน

Module คืออะไร?

ง่ายๆ เลยครับ Module ก็คือไฟล์ Python (.py) ที่เก็บรวบรวมฟังก์ชันและตัวแปรไว้นั่นเอง เราสามารถ "นำเข้า" (Import) สิ่งที่อยู่ในไฟล์นั้นมาใช้ในไฟล์หลักของเราได้


1. การใช้ Built-in Modules (โมดูลมาตรฐาน)

Python มีโมดูลที่แถมมาให้เราใช้งานฟรีๆ มหาศาลครับ เช่น math, random, datetime

import math
import random

print(math.sqrt(64))      # Output: 8.0
print(random.randint(1, 10)) # สุ่มเลข 1-10

2. วิธีการ Import แบบต่างๆ

เราสามารถเลือกนำเข้าข้อมูลได้หลายวิธีตามความเหมาะสมครับ:

รูปแบบการเขียน คำอธิบาย
import math นำเข้าทั้งโมดูล (ต้องเรียก math.pi)
from math import pi เลือกนำเข้าเฉพาะตัวที่ต้องการ (เรียก pi ได้เลย)
import pandas as pd นำเข้าพร้อมตั้งชื่อเล่น (Alias) เพื่อให้เขียนสั้นลง

3. การสร้าง Module ใช้เอง (Custom Module)

สมมติเราสร้างไฟล์ชื่อ my_tools.py เพื่อเก็บฟังก์ชันส่วนตัวของเรา:

# ไฟล์: my_tools.py
def say_hi(name):
    print(f"สวัสดีคุณ {name} จากโมดูลส่วนตัว!")

เราสามารถเรียกใช้ในไฟล์หลัก (main.py) ได้แบบนี้:

# ไฟล์: main.py
import my_tools

my_tools.say_hi("โปรแกรมเมอร์")

4. Packages คืออะไร?

ถ้า Module คือ "ไฟล์", Package ก็คือ "โฟลเดอร์" ครับ มันคือการรวมกลุ่มของหลายๆ โมดูลไว้ด้วยกัน เพื่อให้โปรเจกต์ระดับองค์กรจัดการได้ง่ายขึ้นนั่นเอง


สรุป

การแยกโค้ดเป็น Functions และ Modules ไม่ได้ทำให้โปรแกรมทำงานเร็วขึ้น แต่ทำให้ "คน" ทำงานเร็วขึ้นครับ เพราะมันช่วยให้เราแก้ไขโค้ดได้ง่าย หาจุดผิด (Debug) ได้ไว และทำงานร่วมกับคนอื่นในทีม Web Dev ได้อย่างราบรื่น

ในบทถัดไป (EP 10): เราจะข้ามไปสู่เรื่องที่คนสาย Data และ Web ต้องใช้บ่อยมาก นั่นคือการ File Handling หรือการอ่าน-เขียนข้อมูลลงในไฟล์จริงครับ