November 25, 2011

Python: โครงสร้างโมดูล

ในงานขนาดเล็กๆ เราอาจมี module เพียง script.py แค่ไฟล์เดียว แต่ถ้า project มีขนาดใหญ่ขึ้น เราอาจจำเป็นต้องแยกมันออกเป็นหลายๆ ไฟล์

ตัวอย่างโครงสร้าง directory module ของ Python เป็นดังนี้ครับ

โดยที่ไฟล์ __init__.py เป็นไฟล์สำหรับบอก Python ว่า directory main เป็น module ตัวหนึ่ง แต่ Python ก็ยังไม่รู้ว่าใน directory main มีอะไรบ้างอยู่ดี ดังนั้น ภายในไฟล์ __init__.py ต้องประกาศ import ดังนี้

สังเกตว่า ตอนสั่ง import อย่าลืมชื่อ directory module นำหน้าไฟล์ด้วย และสมมติว่าถ้าต้องการเรียก function test ที่อยู่ในไฟล์ logic ใน interactive shell สามารถทำได้ดังนี้



ลองมาดูอีกซักตัวอย่าง

ต้องเขียนไฟล์ __init__.py แต่ละอันดังนี้

และ

หมายเหตุว่า ที่ไฟล์ __init__.py ไม่จำเป็นต้องมีแค่ import เท่านั้น เราอาจแทรก code ลงไปด้วยก็ได้ เช่น

No comments:

Post a Comment