Об этом проекте
pyenv — это инструмент на базе shell-скриптов, предназначенный для управления несколькими установками Python без зависимости от самого Python. Он использует подход на основе shim-файлов, вставляя директорию в начало PATH пользователя для перехвата команд Python и их перенаправления на указанную версию.
Ключевые возможности включают:
- Глобальное управление версиями Python на уровне пользователя.
- Версионирование Python для каждого проекта через файлы .python-version.
- Переопределение версий с помощью переменных окружения.
- Поддержка одновременного поиска команд в нескольких версиях Python.
- Возможность установки и удаления различных версий Python из исходного кода.
В отличие от некоторых других менеджеров версий, pyenv по умолчанию не управляет виртуальными окружениями, хотя его можно расширить с помощью плагинов, таких как pyenv-virtualenv, для обеспечения этого функционала. Он в первую очередь предназначен для UNIX-подобных систем (Linux, macOS), при этом для нативной поддержки Windows доступен отдельный комьюнити-форк (pyenv-win).