Рубрики
Без рубрики

Виртуальная среда Python с кондиционером – почему шум?

[+ Видео] Эта статья дает вам концептуальное введение в виртуальные среды и показывает, как их использовать с кондиционером.

Автор оригинала: Chris.

В этой статье вы узнаете о важной концепции в Python: виртуальные среды.

Почему виртуальные среды?

Программы развиваются со временем. Если вы являетесь продуктивным кодером, вы отправите свой код рано и часто. Со временем вы исправите ошибки, как они появляются и интегрируют отзывы пользователей вашего кода.

И это то, что делают все кодеры. Предположим, вы программируете Brypto Trading Bot, используя библиотеку для подключения к API Crypto Exchanges (чтобы ваш бот мог купить и продавать валюты). Примером такой библиотеки – CCXT. Ваш код требует точных команд API из CCXT (версия 1.1). Скажем, вы устанавливаете библиотеку CCXT (версия 1.1) на вашем компьютере.

Несколько лет спустя библиотека CCXT изменилась (например, может быть новая версия 3.3), и вы решите, что пришло время создать новый бот. Вы устанавливаете новую версию 3.3 на своем компьютере. Но вдруг странные вещи начинают случиться. Ваш старый бот все еще работает как фоновый процесс (используя CCXT версии 1.1), но новый бот не может начать (с помощью CCXT версии 3.3).

Без виртуальной среды вам придется решить для установки версии CCXT 1.1 или 3.3. Затем вам придется переписать весь старый код, используя более старые версии.

Но что, если разработчик библиотеки удалил критическую особенность вашего приложения?

К счастью, Python предоставляет вам виртуальные среды. Виртуальная среда позволяет определить и установить различные зависимости для разных проектов. Это именно то, что вам нужно. Вы бы установили среду A для первого бота, требующих версии 1.1 и среды B для второго бота, требующих версии 3.3. Вот и все!

Используя виртуальные среды, вы можете отдельно и самостоятельно устанавливать разные пакеты (даже разные версии пакетов) для разных проектов Python. Эти установки не видны глобально. Это имеет преимущество, что вы не загромождаете свою глобальную установку Python на своем компьютере с помощью множества возможных конфликтующих пакетов.

Как создать виртуальные среды?

Существует много разных инструментов для создания виртуальных сред (Virtualenv VS Pipenv vs venv). Но если вы поняли концептуальную идею, представленную в предыдущих пунктах, легко понимать и использовать все эти инструменты.

Лично я использую распределение ANACONDA, которое является популярным распространением Python, которое является бесплатным и открытым исходным распределением Python, специально разработанным для научных вычислений. В частности, Anaconda делает управление пакетом Super легко.

В качестве побочного примечания: Catalina, один из читателей моего телефонного курса «Coffe Break Python», отметил, что использует редактор кода SPYDER из распределения ANACONDA. Я согласен, что этот редактор предоставляет несколько отличных функций и облегчает и удобнее написание и удобнее, чем редактор IDLE по умолчанию.

В распределении ANACONDA вы можете использовать инструмент «CODA» для установки новых пакетов Python. Команда CODA сочетает в себе функциональные возможности диспетчера пакетов PUP с функциональными возможностями инструментов виртуальной среды, таких как Venv. Грубо говоря, вы можете установить новые пакеты во всем мире на своем компьютере, а также отдельно для каждого проекта в виртуальной среде.

После установки распределения ANACONDA вы можете просто запустить следующую команду в оболочке, чтобы проверить, установлена ли CONDA:

conda -V

Затем вы создаете свою виртуальную среду, навигацию к папке проекта и выполняете следующую команду:

conda create -n yourproject python=3.7.3 anaconda

Просто замените фиктивное значение «yourProject» с именем вашего проекта и версии Python с вашей версией Python. Чтобы проверить вашу версию Python, просто запустите команду «Python -V» в своей оболочке.

Теперь подождите, пока ваша виртуальная среда не будет создана. Вы должны увидеть новую папку «yourProject» на вашем пути к файлу.

На данный момент вы создали виртуальную среду, но она еще не активирована. Так что просто выполните следующую команду в своей оболочке:

source activate yourproject

Теперь вы можете установить новые пакеты специально для этой среды:

conda install -n yourproject scikit-learn

В этом примере я установил пакет Scikit-Learn для изучения машины. Если вы не укажите опцию «-N yourProject», она установит пакет глобально, а не в виртуальной среде.

Теперь вы можете просто запустить «Python» в своей оболочке и использовать установленный пакет «Импортировать Sklearn».

Давайте деактивировать виртуальную среду:

source deactivate

Головоломка: если вы открываете новую Shell Python Shell, можете ли вы до сих пор импортировать библиотеку Sklearn? *

Если вы не установили keglenn. Библиотека до того, ответ нет! Scikit -Узнайте библиотека только в виртуальной среде. Но вы деактивировали виртуальную среду, используя предыдущую команду.

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.

Оригинал: “https://blog.finxter.com/python-virtual-environments-conda/”