0Pricing
Python Academy · บทเรียน

การสร้างและนำเข้าโมดูล

เขียนโมดูลของคุณเองและนำเข้าไปใช้ในสคริปต์อื่น

การสร้างและนำเข้าโมดูล เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

บทนำ

โมดูลคือไฟล์ Python ที่มีฟังก์ชัน คลาส และตัวแปร ซึ่งสามารถนำเข้าไปใช้ในสคริปต์อื่นได้

โมดูลคืออะไร

ไฟล์ .py ใด ๆ ก็คือโมดูล utils.py สามารถนำเข้าได้ด้วย: import utils Python จะค้นหาโมดูลใน sys.path
import sys
print(sys.path[:3])

คำสั่ง import

import math นำเข้าโมดูลทั้งโมดูล เข้าถึงได้ด้วย math.sqrt(16) โดยโมดูลจะถูกเก็บไว้ในแคชหลังการนำเข้าครั้งแรก
import math
print(math.sqrt(16))
print(math.pi)

from ... import

from math import sqrt, pi นำเข้าชื่อเฉพาะเข้าสู่เนมสเปซภายในเครื่อง จึงไม่จำเป็นต้องใช้คำนำหน้า math.
from math import sqrt, pi
print(sqrt(25))
print(pi)

import as (ชื่อแทน)

import numpy as np กำหนดชื่อภายในเครื่องที่สั้นลงให้โมดูล มีประโยชน์สำหรับชื่อโมดูลที่ยาว
import os.path as osp
print(osp.join('a', 'b', 'c'))

from ... import *

from math import * นำเข้าทุกอย่าง ควรหลีกเลี่ยง เพราะทำให้เนมสเปซปะปนและยากต่อการทราบว่าชื่อต่าง ๆ มาจากที่ใด
# Avoid:
# from math import *
# Use explicit imports instead
print('namespace tip')

__name__ == '__main__'

if __name__ == '__main__': จะทำงานเมื่อเรียกใช้ไฟล์โดยตรงเท่านั้น ไม่ทำงานเมื่อนำเข้าไฟล์ในฐานะโมดูล
# In your script:
# if __name__ == '__main__':
#     main()
print(__name__)

การโหลดโมดูลใหม่

`importlib.reload(module)` นำเข้าโมดูลที่มีการเปลี่ยนแปลงใหม่โดยไม่ต้องเริ่มการทำงานใหม่ เหมาะสำหรับเซสชันแบบโต้ตอบ
import importlib, math
importlib.reload(math)
print('reloaded')

dir() และ help()

`dir(math)` แสดงชื่อทั้งหมดในโมดูล ส่วน `help(math.sqrt)` แสดงเอกสารกำกับ
import math
print(dir(math)[:5])

เส้นทางค้นหาโมดูล

Python จะค้นหาในไดเรกทอรีของสคริปต์, `PYTHONPATH` และค่าเริ่มต้นของการติดตั้ง คุณเพิ่มเส้นทางได้ด้วย `sys.path.insert(0, '/mydir')`
import sys
sys.path.insert(0, '/tmp')
print(sys.path[:3])

ตัวแปร __all__

กำหนด `__all__ = ['func1', 'func2']` ในโมดูลเพื่อควบคุมสิ่งที่ `from module import *` ส่งออก
# In mymodule.py:
# __all__ = ['public_func']
# def public_func(): ...
# def _private(): ...
print('__all__ demo')

ตรวจสอบความเข้าใจ

คำสั่ง `if __name__ == '__main__':` ป้องกันอะไร

สรุปทบทวน

โมดูลคือไฟล์ `.py` ใช้ `import` หรือ `from...import` ส่วน `if __name__=='__main__':` ใช้ป้องกันจุดเริ่มต้นการทำงาน `dir()` แสดงชื่อ และ `sys.path` ควบคุมลำดับการค้นหา

เรียนต่อ

ยอดเยี่ยมมาก! โปรดเรียนต่อในบทถัดไปเพื่อพัฒนาทักษะของคุณให้ลึกซึ้งยิ่งขึ้น

คำถามที่พบบ่อย

บทเรียน “การสร้างและนำเข้าโมดูล” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การสร้างและนำเข้าโมดูล” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การสร้างและนำเข้าโมดูล”

เขียนโมดูลของคุณเองและนำเข้าไปใช้ในสคริปต์อื่น คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “การสร้างและนำเข้าโมดูล” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การสร้างและนำเข้าโมดูล
  2. ไลบรารีมาตรฐานของ Python
  3. แพ็กเกจและ __init__.py
  4. การติดตั้งแพ็กเกจด้วย pip
← กลับไปที่ Python Academy