pyenv
https://github.com/pyenv/pyenv
Pyenv дозволяє керувати кількома версіями Python без sudo для одного користувача, як Node.js NVM та Ruby RVM .
Встановити Pyenv:
curl https://pyenv.run | bash
Потім додайте до свого .bashrc
:
export PATH="${HOME}/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
Знайдіть версію Python для встановлення:
pyenv install --list
Встановіть потрібну версію python:
# Increase the chances that the build will have all dependencies.
# https://github.com/pyenv/pyenv/wiki/Common-build-problems
sudo apt build-dep python3
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
# Build and install a Python version from source.
pyenv install 3.8.0
Список доступних версій Python:
pyenv versions
Зараз у нас є:
* system (set by /home/cirsan01/.pyenv/version)
3.8.0
Виберіть іншу версію пітона:
pyenv global 3.8.0
python --version
python3 --version
Обидва вихідні дані:
Python 3.8.0
Тепер ми можемо переходити до встановлення та використання пакетів зазвичай:
pip install cowsay
python -c 'import cowsay; cowsay.tux("Python is fun")'
cowsay 'hello'
Ми можемо підтвердити, що все локально встановлено в нашому чистому оточенні за допомогою:
python -c 'import cowsay; print(cowsay.__file__)'
which cowsay
За використання проекту
У попередньому розділі ми бачили, як використовувати pyenv у глобальній установці.
Однак зазвичай потрібно встановити конкретну версію пітона та пакета на основі проекту. Ось як це зробити.
Спочатку встановіть бажану версію Python, як і раніше.
Потім зсередини каталогу каталогу встановіть потрібну версію пітона за допомогою:
pyenv local 3.8.0
який створює файл, .python-version
що містить рядок версії.
А тепер давайте встановимо пакет локально лише для нашого проекту: TODO: немає приємного способу, як здається: /programming/30407446/pyenv-choose-virtualenv-directory/59267972#59267972
Тепер, коли хтось хоче використати ваш проект, він зробить:
pyenv local
який встановлює версію Python правильною.
Пов'язані теми:
Тестовано на Ubuntu 18.04, pyenv 1.2.15.