Пакет в 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)