Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

แพ็คเกจใน Python คืออะไร?


เพื่อทำความเข้าใจแพ็คเกจ คุณต้องรู้เกี่ยวกับโมดูลด้วย ไฟล์ Python ใดๆ ก็ตามที่เป็นโมดูล ชื่อของมันคือชื่อฐานของไฟล์/คุณสมบัติ __name__ ของโมดูลที่ไม่มีนามสกุล .py แพ็คเกจคือคอลเลกชั่นของโมดูล Python กล่าวคือ แพ็คเกจคือไดเร็กทอรีของโมดูล Python ที่มีไฟล์ __init__.py เพิ่มเติม __init__.py แยกแพ็กเกจออกจากไดเร็กทอรีที่มีสคริปต์ Python จำนวนมาก แพ็คเกจสามารถซ้อนได้ในระดับความลึกใดก็ได้ โดยที่ไดเร็กทอรีที่เกี่ยวข้องมีไฟล์ __init__.py ของตัวเอง

เมื่อคุณนำเข้าโมดูลหรือแพ็คเกจ อ็อบเจ็กต์ที่เกี่ยวข้องที่สร้างโดย Python จะเป็นประเภทโมดูลเสมอ ซึ่งหมายความว่าความแตกต่างระหว่างโมดูลและแพ็คเกจอยู่ที่ระดับระบบไฟล์เท่านั้น อย่างไรก็ตาม โปรดทราบว่า เมื่อคุณนำเข้าแพ็คเกจ จะมองเห็นเฉพาะตัวแปร/ฟังก์ชั่น/คลาสในไฟล์ __init__.py ของแพ็คเกจนั้นโดยตรง ไม่เห็นเฉพาะแพ็คเกจย่อยหรือโมดูล

ตัวอย่างเช่น ในโมดูล DateTime มีโมดูลย่อยที่เรียกว่า date เมื่อคุณนำเข้า DateTime จะไม่มีการนำเข้า คุณจะต้องนำเข้าแยกต่างหาก

>>> import datetime
>>> date.today()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'date' is not defined
>>> from datetime import date
>>> date.today()
datetime.date(2017, 9, 1)