Пакеты и модули
1. Модуль
Определение
Модуль — это файл с расширением
.py, содержащий код Python: функции, классы, переменные и исполняемый код.Позволяет разбивать программу на логические части, облегчая поддержку и переиспользование кода.
Пример модуля
math_utils.py:
def add(a, b):
return a + b
def subtract(a, b):
return a - bИмпорт и использование:
import math_utils
print(math_utils.add(2, 3)) # 5
print(math_utils.subtract(5, 2)) # 3Или выборочно:
from math_utils import add
print(add(10, 20)) # 302. Пакет
Определение
Пакет — это папка с файлами Python, которая содержит файл
__init__.py.Позволяет структурировать код в виде иерархии модулей.
Пакет может содержать:
Модули (
.pyфайлы)Подпакеты (другие папки с
__init__.py)
Пример структуры пакета
my_package/
__init__.py
module1.py
module2.py
subpackage/
__init__.py
module3.pyПример использования
from my_package import module1
from my_package.subpackage import module3
module1.func1()
module3.func3()Можно импортировать всё через __init__.py:
# my_package/__init__.py
from .module1 import func1
from .module2 import func2from my_package import func1, func2
func1()
func2()3. Отличие модуля и пакета
Что это
Файл .py
Папка с __init__.py
Может содержать
Код, функции, классы
Модули и подпаки
Цель
Логическая единица кода
Структурирование модулей в иерархию
Пример
math_utils.py
my_package/
4. Применение в автотестах
Модули:
Удобно хранить утилитарные функции, отдельные тестовые шаги.
# utils.py def login(user, password): ...Пакеты:
Структурируют тесты по логике, например:
tests/ __init__.py test_login.py test_registration.py pages/ __init__.py login_page.py home_page.pyПозволяют импортировать сразу весь набор тестов или страниц.
💡 Вывод:
Модуль — это отдельный файл Python, содержит код, функции, классы.
Пакет — это папка с
__init__.py, содержит модули и подпаки, структурирует проект.Правильное использование пакетов и модулей облегчает поддержку, масштабирование и повторное использование кода в автотестах.
Last updated
Was this helpful?