- Установка Django
- Виртуальное окружение
- Работаем с virtualenv
- Установка Django
- Установка библиотек через указание требований
- Как создать виртуальную среду Python 3 на Ubuntu 20.04
- Обновление пакетов системы
- Установка pip для python3
- Создание виртуальной среды для python 3
- Проверка виртуальной среды Python
- Удалить виртуальную среду Python
- Заключение
- Использование виртуальных сред venv и virtualenv для создания окружения Python
- Для чего нужно виртуальные среды?
- Установка и создания окружения с virtualenv
- Активация и выход из окружения
- Управление средами через virtualenvwrapper
- Настройки для Linux
- Настройки для Windows
- Основные команды
- Создание виртуальных сред со встроенным пакетом Python venv
- Создание виртуального окружения в Pycharm
- Создание списка установленных пакетов Requirements.txt
Установка Django
Примечание: если ты используешь Chromebook, пропусти эту главу, но выполни инструкции по настройке для Chromebook
Примечание: если ты уже выполнила установку — можешь пропустить эту часть и сразу перейти к следующей главе!
Отдельные части этой главы основаны на учебных пособиях Geek Girls Carrots (https://github.com/ggcarrots/django-carrots).
Отдельные части этой главы основаны на учебном пособии django-marcador, лицензированном под Creative Commons Attribution-ShareAlike 4.0 International License. Руководство django-marcador защищено авторским правом Markus Zapke-Gründemann et al.
Виртуальное окружение
Перед установкой Django мы попросим тебя установить крайне полезный инструмент, который поможет тебе содержать среду разработки в чистоте. Можно пропустить этот шаг, но мы очень советуем этого не делать. Использование лучших рекомендаций с самого начала убережёт от многих проблем в будущем!
Итак, давай создадим виртуальное окружение (оно также называется virtualenv). Virtualenv будет изолировать настройки Python/Django для каждого отдельного проекта. Это значит, что изменения одного сайта не затронут другие сайты, которые ты разрабатываешь. Удобно, правда?
Всё, что тебе нужно сделать — найти директорию, в которой мы создадим virtualenv ; домашний каталог вполне подойдёт. Для Windows адрес будет выглядеть так: C:\Users\Name (где Name — твоё имя пользователя).
Примечание: Если ты работаешь в Windows, удостоверься, что в названии директории нет специальных символов или символов с диакритическими знаками; если в твоём имени пользователя есть такие символы, выбери другую директорию, например, C:\djangogirls .
Мы будем использовать отдельную директорию djangogirls в домашнем каталоге:
Мы создадим виртуальное окружение под именем myvenv . В общем случае команда будет выглядеть так:
Чтобы создать новое virtualenv , тебе нужно открыть командную строку и набрать python -m venv myvenv . Это будет выглядеть так:
Здесь myvenv — имя твоего virtualenv . Ты можешь выбрать другое имя, но используй только строчные буквы, без пробелов и специальных символов. Имя виртуального окружения выбирай покороче — тебе придётся часто его набирать!
В Linux и OS X достаточно набрать python3 -m venv myvenv , чтобы создать virtualenv :
myvenv — имя виртуального окружения virtualenv . Можешь выбрать другое имя, но используй только строчные буквы и никаких пробелов. Имя виртуального окружения лучше выбирать покороче — набирать его предстоит не раз!
Примечание: В некоторых версиях Debian/Ubuntu может произойти следующая ошибка:
В таком случае следуй приведённым инструкциям и установи пакет python3-venv :
Примечание: В некоторых версиях Debian/Ubuntu при таком способе создания виртуального окружения ты можешь получить такую ошибку:
Чтобы обойти её, используй команду virtualenv .
Примечание: Если ты получаешь следующую ошибку
то запусти команду:
Работаем с virtualenv
Указанная выше команда создаст директорию myvenv (или другую, в зависимости от выбранного тобой имени), которая будет содержать виртуальное окружение (по сути — набор файлов и папок).
Запусти виртуальное окружение, выполнив:
ПРИМЕЧАНИЕ: в Windows 10 при работе в Windows PowerShell ты можешь получить ошибку вида execution of scripts is disabled on this system . В этом случае открой ещё одно окно Windows PowerShell, выбрав опцию «Запустить от имени Администратора». Затем перед использованием виртуального окружения попробуй запустить следующую команду:
Запусти виртуальное окружение, выполнив:
Не забудь поменять myvenv на выбранное тобой имя для virtualenv !
ПРИМЕЧАНИЕ: иногда команда source может быть недоступна. В таком случае используй следующий метод:
Ты поймёшь, что virtualenv запущено, когда увидишь префикс (myvenv) в начале приглашения командной строки.
При работе с виртуальным окружением команда python будет автоматически обращаться к правильной версии языка, так что ты можешь использовать просто python вместо python3 .
Отлично, теперь мы будем хранить все важные зависимости в одном месте. Наконец можно установить Django!
Установка Django
После запуска virtualenv ты можешь установить Django.
Перед этим мы должны удостовериться, что у тебя установлена последняя версия pip — программы, которую мы используем для установки Django.
Установка библиотек через указание требований
Файл с требованиями (requirements) хранит список зависимостей, которые нужно установить с помощью pip install :
Для начала создай файл requirements.txt внутри директории djangogirls/ , используя текстовый редактор, который ты установила ранее. Просто создай в редакторе новый файл, а затем сохрани его под именем requirements.txt в директории djangogirls/ . После этого твоя директория будет выглядеть так:
В файл djangogirls/requirements.txt нужно добавить такой текст:
Теперь выполни команду pip install -r requirements.txt , чтобы установить Django.
Если при запуске pip в Windows ты получаешь сообщение об ошибке, проверь, что путь к директории с проектом не содержит пробелов или специальных символов ( C:\Users\User Name\djangogirls ). Если проблема в этом, то, пожалуйста, перенеси свой проект в другое место, адрес которого не будет содержать пробелов и специальных символов (предлагаем C:\djangogirls ). Создай новое виртуальное окружение в новой директории, после этого удали старое и попробуй запустить команды выше заново (перемещение виртуального окружения не сработает, поскольку в нём используются абсолютные пути).
При попытке установки Django твоя командная строка может зависнуть. Если это произошло, вместо приведённой выше команды используй:
Вот и всё! Теперь ты (наконец-то) готова создать своё Django-приложение!
Источник
Как создать виртуальную среду Python 3 на Ubuntu 20.04
Виртуальная среда Python используется для создания изолированной среды для проекта Python. Эта среда содержит интерпретатор, библиотеки и сценарии проекта. Вы можете создать любое количество виртуальных сред для своих проектов, каждая из которых имеет свои собственные зависимости.
С помощью виртуальной среды Python можно избежать глобальную установку пакетов, которая может нарушить работу других проектов.
Говоря простыми словами, виртуальная среда помогает правильно установить определенные версии пакетов, необходимых для проекта python.
Если у вас не установлен Python рекомендую прочитать статью Установка Python в Ubuntu
Обновление пакетов системы
Чтобы обновить Ubuntu 20.04 последними пакетами, выполните команду apt:
$ sudo apt update
$ sudo apt upgrade
Установка pip для python3
Перед установкой виртуальной среды, требуется установить pip. Pip — это менеджер пакетов, который помогает устанавливать, удалять и обновлять пакеты для ваших проектов.
Чтобы установить pip для python 3 используйте команду:
Создание виртуальной среды для python 3
Команда Venv используется в Python для создания виртуальной среды. Пакет venv доступен в репозитории Ubuntu.
Чтобы установить пакет venv, требуется использовать следующую команду:
Теперь, чтобы создать виртуальную среду, введите:
Приведенная выше команда создает каталог с именем «my_env_project«, который содержит pip, интерпретатор, скрипты и библиотеки.
$ ls my_env_project/
bin include lib lib64 pyvenv.cfg share
Теперь вы можете активировать виртуальную среду, введя команду:
Командная строка изменится на вашу среду и будет выглядеть так, как показано ниже:
Проверка виртуальной среды Python
Запустите команду «python» внутри виртуальной среды, чтобы открыть интерпретатор:
Ответ терминала будет следующим:
Python 3.8.5 (default, Jul 28 2020, 12:59:40)
[GCC 9.3.0] on linux
Type «help», «copyright», «credits» or «license» for more information.
Попробую установить пакет NumPy внутри виртуальной среды Python. Для этого воспользуюсь командой:
$ pip install numpy —user
Если вы получите ошибку типа:
“ERROR: Can not perform a ‘–user’ install. User site-packages are not visible in this virtualenv.”
Вам требуется установить пакет include-system-site-packages и установить значение true в файле pyvenv.cfg.
Каждый раз, когда вы устанавливаете новый пакет в своей виртуальной среде, вы должны иметь возможность импортировать его в свой проект.
/my_env_project$ python
>>> import numpy
Давайте протестируем математическую функцию:
Чтобы выйти из интерпретатора, введите:
Вы можете создать скрипт python и запустить его из виртуальной среды python 3.
Вы увидите следующий результат:
Чтобы выполнить сценарий, введите:
Сценарий выполняется внутри виртуальной среды с именем my_env_project.
Удалить виртуальную среду Python
Для выхода из виртуальной среды используйте команду exit или сочетание клавиш Ctrl+d. Чтобы удалить виртуальную среду, выполните следующую команду:
Приведенная выше команда не удалит каталог my_env_project. Для удаления каталога потребуется использовать команду rm.
Заключение
Надеюсь что данная статья помогла вам узнать, как правильно создать виртуальную среду для ваших проектов Python 3 на Ubuntu 20.04.
Источник
Использование виртуальных сред venv и virtualenv для создания окружения Python
Виртуальные среды (окружения) используются в Python 3 контроля версионности пакетов. Кроме контроля версий среды используют для использования разных интерпретаторов. Самих пакетов, которые создают виртуальные окружения много. В этой статье речь пойдет про venv, virtualenv и virtualenvwrapper.
Навигация по посту
Для чего нужно виртуальные среды?
При создании скрипта или программы вы часто используете сторонние модули (пакеты). Если в последующем потребуется перенос программы на другой компьютер, то вы можете столкнуться с двумя проблемами:
- Нужные пакеты отсутствуют на новом компьютере и придется проверять каждый файл программы для их поиска. Либо получить список установленных пакетов через «pip list» на старом компьютере, который выведет множество лишних модулей.
- Даже если количество пакетов или файлов программ маленькое, или вы его создали отдельно, то вы все равно можете столкнуться с проблемами в версиях. Пакеты могли быть обновлены, а методы и классы изменены.
Использование виртуальных сред избавляет вас от этих проблем. В таком виртуальной среде находится свой интерпретатор, свой pip и все пакеты относятся только к нему. Так же, весь проект, можно перенести как папку на другой компьютер без ошибок.
Кроме этого вы можете запускать разные версии Python в разных виртуальных средах, что сильно упрощает работу.
Установка и создания окружения с virtualenv
Самый популярный пакет, который используется для создания виртуальных сред в Python, это virtualenv. Для его установки на Windows выполните:
Для установки на Linux системах, для Python 3, понадобится выполнить такую команду:
Если вы не будете использовать sudo, то в зависимости от версии ОС у вас появятся разные ошибки. В CentOS установка не выполнится вовсе, а в Ubuntu не будет добавлен путь в переменную окружения:
- PermissionError: [Errno 13] Permission denied: ‘/usr/local/lib/python3.6’
- Command ‘virtualenv’ not found, but can be installed with: sudo apt install virtualenv
Далее, вне зависимости от того используете ли вы Linux или Windows, вы можете выполнить команду получения справки:
Я использую Python 3.6, и так я создам окружение в папке projectname/venv:
Способ выше устанавливает окружение относительно текущего пути. Если нужно установить на другом диске или каталоге, то можно использовать абсолютный путь. Так же не обязательно указывать параметр «-p» если вы используете одну версию Python. Вариант как это может быть сделано на Windows:
Само расположение виртуального окружения рекомендуется создавать в одной папке вместе разрабатываемым приложением. Такую структуру будет легче сопровождать. Я обычно придерживаюсь такой структуры:
Активация и выход из окружения
Для того что бы виртуальное окружения начало работать его нужно активировать. В разных ОС это делается по-разному.
В случаях с Linux указываем полный путь до venv/bin/activate:
Для активации в Windows, в папке venv\Scripts есть несколько файлов:
- activate.ps1 — для активации через Powershell;
- activate.bat — для активации через CMD.
Для активации просто укажите полный путь до файла. Например:
О том что вы находитесь в виртуальном окружении свидетельствуют следующие надписи:
Вы так же можете сравнить количество установленных пакетов внутри виртуального окружения с тем, что установлено вне:
Теперь вы можете устанавливать пакеты, которые будут работать только в этой среде.
Для выхода из окружения, за исключением запуска с помощью CMD, используйте команду:
Для CMD нужно указать путь до файла «venv\Scripts\deactivate.bat».
Управление средами через virtualenvwrapper
Если вы создаете множество виртуальных сред, например для тестирования в разных версиях Python, вы можете использовать virtualenvwrapper. Этот пакет представляет собой надстройку для virtualenv для более удобной работы и устанавливается отдельно.
Благодаря этому пакету мы сможем запускать ваши окружения так:
Для Windows нужно установить следующий пакет:
Для Linux нужно так же использовать sudo:
Настройки для Linux
Virtualenvwrapper хранит все окружения в одном месте. Это место определяется через переменную WORKON_HOME в Linux и по умолчанию равно директории ‘/home/пользователь/.virtualenvs’. Если вы хотите изменить это расположение — выполните команду экспорта с нужным путем:
Следующая команда добавит скрипты в домашний каталог для удобной работы:
При выполнении предыдущей команды у меня появилась ошибка:
virtualenvwrapper.sh: There was a problem running the initialization hooks. If Python could not import the module virtualenvwrapper.hook_loader
Она исправилась добавлением переменной в env с путем до нужного интерпретатора:
Настройки для Windows
Все виртуальные среды, которые будут созданы, по умолчанию будут располагаться по пути «C:\Users\%USERNAME%\Envs». Если вам нужно изменить расположение, то создайте переменную WORKON_HOME с нужной директорией:
Важный момент, в случае с Windows, команды virtualenvwrapper не будут выполняться Powershell. Команды работают только через CMD.
Основные команды
Далее мы можем использовать следующие команды (основные):
- mkvirtualenv — создание окружения;
- lsvirtualenv — отображение списка окружений;
- rmvirtualenv — удаление;
- workon — переключение между виртуальными средами;
- deactivate — выход из текущего окружения.
Так мы создадим виртуальную среду:
Так выйдем из созданной среды:
Если нужно использовать другую версию Python:
Создание виртуальных сред со встроенным пакетом Python venv
Ранее, до версии Python >= 3.6 базовая установка интерпретатора шла вместе с пакетом pyenv, но на данный момент он считается устаревшим и более не поддерживается. На его смену пришел venv. В некоторых версиях ОС (Ubuntu/Debian) может потребоваться его отдельная установка:
Проверить, то что пакет venv установлен, можно так:
Следующая команда создаст виртуальную среду:
Выбранная версия Python и стандартные библиотеки будут скопированы в указанную папку.
Активация окружения выполняется следующим образом:
Для выхода из окружения:
Создание виртуального окружения в Pycharm
В некоторых IDE, например Pycharm, консоль встроенная и по умолчанию у вас будет запускаться интерпретатор выбранный в настройках. В Pycharm вы можете создать или изменить проект привязав его к определенному интерпретатору.
Виртуальную среду можно создать при создании нового проекта. Для этого нужно зайти по следующему пути:
В новом окне выбрать название проекта, место для копирования, интерпретатор и нажать кнопку создания окружения:
Для настройки окружения для старых проектов нужно зайти в настройки:
Во вкладе «Python Interpreter» будет выбор из существующих интерпретаторов (1). Либо можно создать новый (2):
Создание списка установленных пакетов Requirements.txt
Используя виртуальные окружения можно легко создавать файл, в котором будут собраны все названия и версии пакетов для определенного проекта. Этот подход используется для удобства работы, так как одной программой мы сразу установим нужные пакеты.
Так мы получим список пакетов, установленных в виртуальном окружении, в формате читаемом pip:
Следующим способом мы экспортируем этот список в файл Requirements.txt (способ подходит для Bash/CMD/Powershell):
На другом компьютере/среде мы можем этот список быстро проверить и установить отсутствующие пакеты следующей командой:
Источник