Python LanguageРазница между модулем и пакетом

замечания

Можно поместить пакет Python в ZIP-файл и использовать его таким образом, если вы добавите эти строки в начало вашего скрипта:

import sys
sys.path.append("package.zip")

Модули

Модуль представляет собой один файл Python, который можно импортировать. Использование модуля выглядит так:

module.py

def hi():
    print("Hello world!")

my_script.py

import module
module.hi()

в переводчике

>>> from module import hi
>>> hi()
# Hello world!

пакеты

Пакет состоит из нескольких файлов (или модулей) Python и может содержать даже библиотеки, написанные на C или C ++. Вместо того, чтобы быть единственным файлом, это целая структура папок, которая может выглядеть так:

Папка package

  • __init__.py
  • dog.py
  • hi.py

__init__.py

from package.dog import woof
from package.hi import hi

dog.py

def woof():
    print("WOOF!!!")

hi.py

def hi():
    print("Hello world!")

Все пакеты Python должны содержать файл __init__.py . Когда вы импортируете пакет в свой скрипт ( import package ), будет запущен скрипт __init__.py , предоставляющий вам доступ ко всем функциям пакета. В этом случае он позволяет использовать функции package.hi и package.woof .