Python Programming/Modules

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา

แฟ้มโปรแกรม Python ใด ๆ จะถูกจัดโมดูล ซึ่งถูกเรียกใช้ได้จากแฟ้ม Python อื่น ๆ

พิจารณาตัวอย่างต่อไปนี้ สมมติว่าโปรแกรมด้านล่างถูกเก็บอยู่ในแฟ้ม mymodule.py

# แฟ้ม mymodule.py
 
def my_add(a,b):
    return a+b

เราสามารถเรียกใช้ฟังก์ชันดังกล่าวในอีกโปรแกรมได้ดังตัวอย่างต่อไปนี้

import mymodule
 
print mymodule.my_add(10,20)

การสั่ง import mymodule เปรียบเสมือนการเรียกแฟ้ม mymodule.py เข้ามารวมกับโปรแกรมที่เราเขียน ถ้าในแฟ้ม mymodule.py มีคำสั่งให้ทำงานอยู่ คำสั่งเหล่านั้นจะถูกเรียกใช้ด้วยเช่นเดียวกัน

อย่างไรก็ตาม บางครั้งเราเขียนโปรแกรม Python เพื่อใช้ และในขณะเดียวกันก็ต้องการให้ฟังก์ชันที่เขียนสามารถนำไปใช้ในโปรแกรมอื่น ๆ ด้วย เราสามารถตรวจสอบได้โดยใช้ตัวแปร __name__ ดังเช่นตัวอย่างด้านล่างนี้

# แฟ้ม mymodule.py
 
def my_add(a,b):
    return a+b
 
def main():
    # โปรแกรมหลักของแฟ้มนี้
    print "You run mymodule.py"
    print my_add(100,200)
 
if __name__ == "__main__":     # ตรวจสอบว่าเป็นแฟ้มหลักหรือไม่
    main()

เมื่อเราเรียก python mymodule.py เราจะได้ผลลัพธ์เป็น

You run mymodule.py
300

อย่างไรก็ตามฟังก์ชัน main จะไม่ถูกเรียกในโปรแกรมที่เรียกใช้โมดูล mymodule

หน้าก่อน: Inheritance สารบัญ หน้าต่อไป: