предисловие
использовать python для разработки,Unix/LinuxОкружение будет более дружелюбным, и не будет необъяснимых ошибок.Хотя магазин Windows также выпустил подсистему Ubuntu, функции не завершены, и система не идеальна. В этой статье подробно рассказывается, как установить и использовать pyenv в Ubuntu, Archlinux, Centos и Mac. Чтобы узнать, как использовать pyenv под Windows, перейдите по исходному адресу pyenv-win для просмотра:GitHub.com/Piegirl-win/Боюсь…, и, конечно же, pyenv также доступен в подсистеме Linux в магазине Windows.
задний план
Существует много версий Python, и разница между 2 и 3 относительно велика.Если вам нужна другая среда, выберите использование докера.Учебник по докеру можно найти в учебнике для новичков.
ууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууу.com/docker/dock…
Вы также можете найти соответствующие документы на официальном сайте
Если вы используете докер, вам не нужна изолированная среда.Если вы хотите запустить его непосредственно на сервере, у вас должна быть изолированная среда. В этой статье будет рассказано об использовании pyenv для создания виртуальных сред для разных версий Python.
использовать
Идеальная изоляция версий Python под Linux с помощью pyenv и pyenv-virtualenv
Глава 1: Использование среды
Уведомление:Эта статья выполняется под Linux и Mac OS X и не предполагает установку и использование под Windows.
список
- git
- bash, zsh или варить
- pyenv
- pyenv-virtualenv
1. Установите git
Установить git под основные дистрибутивы Linux очень просто, здесь показаны только некоторые примеры
- archlinux
sudo pacman -S git - debian/ubuntu
sudo apt install git - centos
sudo yum install git - Mac
brew install git
2. Откройте терминал
Использование оболочки под Ubuntu
Ctrl + Alt + tГорячая клавиша для открытия терминала
3. Установите пиенв
проиллюстрировать:Все установки в этой статье строго следуют официальной документации и полностью соответствуют официальной документации.
Адрес исходного кода git:github.com/pyenv/pyenv
Выполните следующую команду в терминале, чтобы завершить установку:
Сначала клонируйте проект и поместите его в скрытую папку в домашнем каталоге: .pyenv.
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
Если вы являетесь пользователем Mac, вы можете использовать команду brew для установки
brew update
brew install pyenv
Затем настройте переменные среды:
- Если вы используете bash, последовательно выполните следующие команды:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bashrc
- Если вы используете zsh, последовательно выполните следующие команды:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.zshrc
- Если вы используете Mac, выполните следующую команду:
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init-)"\nfi' >> ~/.bash_profile
Смысл команды echo: записать содержимое в кавычках в файл
Обратите внимание, что последняя команда из трех приведенных выше эхо-команд, убедитесь, что содержимое в кавычках находится внизу ~/.bashrc или ~/.zshrc.
Непредсказуемое поведение из-за манипулирования переменной среды пути во время инициализации pyenv.
Для просмотра нижнего содержимого файла вы можете использовать команду tail, использование: tail ~/.bashrc или tail ~/.zshrc, для редактирования файла вы можете использовать vim или vscode
Затем перед использованием pyenv вам необходимо инициализировать среду оболочки и выполнить следующую команду
exec $SHELLилиsource ~/.bashrc
Также можно закрыть текущее окно терминала и перезапустить его.
4. Установите pyenv-virtualenv
Адрес исходного кода git:GitHub.com/Piegirl/Piegirl…
Клонируйте плагин в папку плагинов только что установленного pyenv.
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
Если вы являетесь пользователем Mac, вы можете использовать команду brew для установки
brew install pyenv-virtualenv
Затем настройте переменные среды
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
- Если вы используете bash, выполните следующую команду:
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
- Если вы используете zsh, выполните следующую команду:
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrc
Наконец, перед использованием pyenv повторно инициализируйте среду оболочки и выполните следующую команду.
exec $SHELLилиsource ~/.bashrc
Или перезапустите окно терминала.
Если ошибки нет, все операции по установке на данный момент завершены.Если отображается ошибка, проверьтеПреамбула==Путь== и ==Переменные среды==(Проверьте, следует ли использовать команду, соответствующую системной среде.) настроен правильно, либо откатите операцию и повторите команду установки
Глава 2: Использование pyenv
Здесь показано только ежедневное использование pyenv и pyenv-virtualenv.
Проверьте правильность установки
- Проверьте версию pyenv
pyenv version
- Посмотрите, какие версии Python уже размещены на pyenv
pyenv versions
Если отображается обычная информация о версии, установка прошла успешно.command not foundтакие как подсказки, указывающие на то, что установка не удалась, пожалуйста, проверьтеконец первой главынамекать.
Установите версию Python 3.6.6.
pyenv install 3.6.6
Здесь следует отметить, что в некоторых случаях произойдет сбой установки, а также сбой сборки.
Не паникуйте, мы можем проверить план ответа, подготовленный pyenv, в вики github, исходный адресGitHub.com/Piegirl/Piegirl…
Выдержка такова, просто выполните соответствующую команду:
- пользователь ArchLinux
sudo pacman -S base-devel openssl zlib
- Пользователи Mac
brew install openssl readline sqlite3 xz zlib
Если вы используете OS X Mojave или выше (10.14+), вам также необходимо выполнить следующую командуsudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
- Пользователи Ubuntu/Debian/Mint
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev
- CentOS/Fedora
sudo yum install gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel
- Fedora >= 22 пользователя, убедитесь, что установлен инструмент xz
sudo dnf install -y gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel
- пользователи openSUSE
zypper install gcc automake openssl-devel ncurses-devel readline-devel zlib-devel tk-devel
- Пользователи Solus
sudo eopkg it -c system.devel
sudo eopkg install git gcc make zlib-devel bzip2-devel readline-devel sqlite3-devel openssl-devel tk-devel
- Пользователи Linuxbrew
brew install bzip2 openssl readline sqlite xz
После установки этих дополнительных инструментов снова выполните:
pyenv install 3.6.6
Это может быть успешным, вы можете продолжать использоватьpyenv versionsчтобы увидетьpyenvУправляемая версия Python, отсутствие конфликтов между несколькими версиями, идеальное сосуществование
воплощать в жизньpyenv install, затем нажмитеtabключ, вы можете увидеть все дополнительные установленные версии
Как создать виртуальную среду с уже установленной версией
Сотрудничество между pyenv и pyenv-virtualenv можно понимать следующим образом:
pyenv содержит установленную версию Python, а python-virtualenv вызывает соответствующую версию Python.
Вот как создать и использовать виртуальную среду
1. Создайте виртуальную среду
Сначала вам нужно создать виртуальную среду и выполнить команду:
pyenv virtualenv 3.6.6 my-env
Последнее — это имя окружения, которое можно выбрать произвольно. Успешная установка отобразит:
Looking in links: /tmp/tmp0eywgc7v
Requirement already satisfied: setuptools in /home/vic/.pyenv/versions/3.6.6/envs/my-env/lib/python3.6/site-packages (39.0.1)
Requirement already satisfied: pip in /home/vic/.pyenv/versions/3.6.6/envs/my-env/lib/python3.6/site-packages (10.0.1)
Он указывает абсолютный путь к виртуальной среде.
2. Активируйте виртуальную среду
В любом каталоге выполните команду:
pyenv activate my-env
Перед командной строкой терминала будет(my-env)Если вы войдете в среду python, вы увидите версию 3.6.6, установленную для виртуальной среды, используйтеpip --version, вы можете увидеть абсолютный путь установки пакета pip
Используйте терминал для входа в любой каталог, например~/envtest
cd ~/envtest
Затем выполните в этом каталоге:
pyenv local my-env
Вы также можете активировать созданную виртуальную среду и выполнить:
ls -al
Разница между локальной командой и предыдущей командой заключается в том, что в каталоге ~/envtest будет создан скрытый файл .python-version.Содержимое файла содержит только предложение my-env.Пока вы используете терминал чтобы войти в каталог ~/test, виртуальный файл будет автоматически активирован.
Чтобы выйти из виртуальной среды, используйте одну из следующих двух команд.
pyenv deactivate # 或者
source deactivate
3. Удалите виртуальную среду
Со временем у вас может накопиться много виртуальных сред, для удаления виртуальных сред можно использовать команду
pyenv uninstall my-envилиrm -rf my-envНепосредственно удалите каталог, в котором находится виртуальная среда.
Глава 3: Обновление pyenv
при использованииgitКлонировать, обновить с помощью команды git pull
cd ~/.pyenvилиcd $(pyenv root)
git pull origin master
Пользователи Mac используют команду brew
brew upgrade pyenv
Глава 4: Удаление pyenv
Поскольку pyenv помещает все в папку ~/.pyenv, удаление под Linux разделено на два этапа.
-
удалить переменную окружения
-
воплощать в жизнь:
rm -rf ~/.pyenvилиrm -rf $(pyenv root)
Пользователям Mac необходимо использовать команду brew для удаления:
brew uninstall pyenv
PS
Эта статья ссылается на официальную документацию и в нее внесены изменения, документацию можно найти в исходном коде по адресу github.
пьенв:github.com/pyenv/pyenv
pyenv-virtualenv:GitHub.com/Piegirl/Piegirl…