Python 模块

มันคืออะไรโมดูล?

ใจคิดถึงคลาสเบิร์กคอดที่คล้ายโมดูล

โมดูลเป็นไฟล์ที่มีกลุ่มฟังก์ชันที่ต้องการใช้ในโปรแกรม

สร้างโมดูล

ถ้าต้องการสร้างโมดูล แค่บันทึกโค้ดที่ไฟล์ที่มีนามสกุล .py ของไฟล์

ตัวอย่าง

ในไฟล์ที่มีชื่อ mymodule.py บันทึกโค้ดไว้ในไฟล์

def greeting(name):
  print("Hello, " + name)

โมดูล

ตอนนี้ เราสามารถใช้ import ใช้ใบอ่าน

ตัวอย่าง

นำเข้า mymodule ของโมดูล greeting ฟังก์ชัน:

import mymodule
mymodule.greeting("Bill")

ปฏิบัติตัวอย่าง

หมายเหตุ:กรณีที่ใช้ฟังก์ชันในโมดูล ใช้กราฟิกดังนี้

module_name.function_name

ตัวแปรในโมดูล

โมดูลสามารถมีฟังก์ชันที่ได้รับการอธิบายไว้แล้ว แต่ยังสามารถมีตัวแปรทุกชนิด (ตัวแปรแบบแรงยึด, ตัวแปรแบบธรรมชาติ, ตัวแปรแบบเป้าหมาย และเป็นต้น)

ตัวอย่าง

ในไฟล์ mymodule.py และบันทึกโค้ดไว้ใน

person1 = {
  "name": "Bill",
  "age": 63,
  "country": "USA"
}

ตัวอย่าง

นำเข้า mymodule โมดูลที่มีชื่อ

import mymodule
a = mymodule.person1["age"]
print(a)

ปฏิบัติตัวอย่าง

ตั้งชื่อโมดูล

คุณสามารถตั้งชื่อไฟล์โมดูลอย่างอย่างง่าย แต่ชื่อของไฟล์ต้องมีนามสกุล .py

เปลี่ยนชื่อโมดูล

คุณสามารถใช้ as ในขณะที่นำเข้าโมดูล as การสร้างชื่อเล่นด้วยคำสำคัญ

ตัวอย่าง

สร้างชื่อเล่นสำหรับ mymodule ว่า mx:

import mymodule as mx
a = mx.person1["age"]
print(a)

ปฏิบัติตัวอย่าง

โมดูลภายใน

Python มีโมดูลภายในของหลายรายการที่คุณสามารถนำเข้าใช้ได้ทันที

ตัวอย่าง

นำเข้าและใช้ platform โมดูล:

import platform
x = platform.system()
print(x)

ปฏิบัติตัวอย่าง

ใช้ฟังก์ชัน dir()

มีฟังก์ชันที่ฝั่งในซึ่งสามารถแสดงรายการชื่อฟังก์ชัน (หรือตัวแปร) ทั้งหมดในโมดูลdir() ฟังก์ชัน:

ตัวอย่าง

แสดงรายการชื่อที่ถูกประกาศในโมดูล platform

import platform
x = dir(platform)
print(x)

ปฏิบัติตัวอย่าง

หมายเหตุ:ฟังก์ชัน dir() สามารถใช้ในโมดูลทุกโมดูล และโมดูลที่คุณสร้างเอง

นำเข้าโมดูล

คุณสามารถใช้คำสั่ง from เลือกเพียงแค่นำเข้าส่วนที่ต้องการจากโมดูล

ตัวอย่าง

โมดูลที่มีชื่อ mymodule มีฟังก์ชันและตัวแปร

def greeting(name):
  print("Hello, " + name)
person1 = {
  "name": "Bill",
  "age": 63,
  "country": "USA"
}

ตัวอย่าง

นำเข้ามาเพียงแค่แปลงตัวเรียก person1 จากโมดูล

from mymodule import person1
print (person1["age"])

ปฏิบัติตัวอย่าง

คำเตือน:ในการนำเข้าโดยการใช้คำสั่ง from โปรดไม่ใช้ชื่อโมดูลในการอ้างอิงส่วนของโมดูล ตัวอย่าง: person1["age"] ไม่ใช่ mymodule.person1["age"]