Пакет в Python – это каталог, включающий в себя другие каталоги и модули, но при этом дополнительно содержащий файл __init__.py. Пакеты используются для формирования пространства имен, что позволяет работать с модулями через указание уровня вложенности (через точку).
math.sqrt.function(i) #подробнее ниже
Здесь: math - имя пакета, sqrt - имя модуля, function(i) - функция.
Для импортирования пакетов используется тот же синтаксис, что и для работы с модулями.
Файл __init__.py может быть пустым или может содержать переменную __all__, хранящую список модулей, который импортируется при загрузке через конструкцию
from имя_пакета import *
Например, содержимое __init__.py может быть таким:
__all__ = ["sqrt", "sin", "cos"]
А структура пакета math может быть такой:
math
|-- __init__.py
|-- sqrt.py
|-- sin.py
|-- cos.py
import math.sqrt
fv = math.sqrt.function(i)
import math.sqrt as sq
fv = sq.function(i)
from math import sqrt
fv = sqrt.function(i)