Ответ
Python Wheels (.whl) — это стандартный формат бинарного дистрибутива для пакетов Python, предназначенный для ускорения и упрощения установки. В отличие от исходных дистрибутивов (sdist), Wheels содержат предварительно скомпилированные файлы, что устраняет необходимость компиляции на стороне пользователя.
Основные преимущества:
- Быстрая установка: Отсутствие необходимости компиляции C-расширений или других нативных компонентов значительно сокращает время установки.
- Меньше зависимостей: Для установки пакета не требуется наличие компилятора (например, GCC) или других специфических инструментов сборки на целевой системе.
- Кросс-платформенность: Поддерживают различные платформы и версии Python через специальные теги (например,
manylinux,win_amd64,py3-none-any), что позволяет создавать универсальные или специфические для ОС дистрибутивы. - Надежность: Уменьшают вероятность ошибок, связанных с компиляцией или отсутствием необходимых зависимостей сборки.
Пример создания Wheel:
Для создания Wheel-файла из вашего пакета, убедитесь, что у вас установлен пакет wheel, а затем используйте setuptools:
pip install wheel
python setup.py bdist_wheel
Это создаст файл .whl в директории dist/.
Установка Wheel-файла:
pip автоматически предпочитает Wheels при установке пакетов. Если у вас есть локальный .whl файл, вы можете установить его так:
pip install package_name.whl
Wheels являются рекомендуемым способом дистрибуции для большинства Python-пакетов, особенно для тех, которые включают нативные расширения (например, NumPy, Pandas, SciPy).