malikarumi@Tetouan2:~$ pip install virtualenv
Collecting virtualenv
Downloading virtualenv-12.0.7-py2.py3-none-any.whl (1.8MB)
100% |################################| 1.8MB 330kB/s
malikarumi@Tetouan2:~$ pip freeze
(a lot of stuff, but not virtualenv)
malikarumi@Tetouan2:~$ virtualenv testvenv1
The program 'virtualenv' is currently not installed. You can install it by typing:
sudo apt-get install python-virtualenv
Что здесь происходит? такое python-virtualenv == pyvenv? Разве это еще не сломано? Оригинальный virtualenv все еще работает с питоном? если venv (слишком много вариантов имен !!!) является частью стандартной библиотеки, https://docs.python.org/3/library/venv.html , почему мне говорят установить его?
И когда я попытался установить его, я получил:
malikarumi@Tetouan2:~$ sudo apt-get install python-virtualenv
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
python-colorama python-distlib python-html5lib python-pip python-setuptools
В этот момент я прервался, потому что установка python3-pip перед этим дала мне
Setting up python3-setuptools (3.3-1ubuntu1) ...
Setting up python3-pip (1.5.4-1) ...
И я не был уверен, что дополнительные пакеты перезапишут их или перейдут на python 2.7.
Я читал, что Python 3 по умолчанию будет использоваться по умолчанию. Поскольку есть и 2.7, и 3.4, и они имеют отдельные команды, как мне не только убедиться, что Python 3 используется по умолчанию, но что все, что я устанавливаю, идет туда и используется им вместо 2.7?
Кстати, я попробовал sudo apt-get python3-virtualenv и получил: E: Невозможно найти пакет python3-virtualenv
источник
Ответы:
Способ установки пакетов Python 3.x в виртуальной среде Python заключается в создании виртуальной среды Python с использованием создателя виртуальной среды Python 3 ( python3-virtualenv ). python3-virtualenv находится в репозиториях Ubuntu по умолчанию в Ubuntu 14.10 и более поздних версиях.
Установите пакеты Python 3.x в виртуальной среде Python в 16.04 и более поздних версиях.
Установите создатель виртуальной среды Python 3
Создайте виртуальную среду Python для python3. Вы можете устанавливать пакеты Python3 только внутри этой виртуальной среды Python. Если вы также хотите установить пакеты Python 2.x, вам нужно создать другую виртуальную среду Python.
Новая виртуальная среда Python для python3 будет создана в
env
каталоге, который находится в текущем каталоге.Установите пакеты Python.
Это новая виртуальная среда python3 с последней версией pip3, поэтому установка пакетов Python в ней будет работать отлично.
Установите пакеты Python 3.x в виртуальной среде Python в Ubuntu 14.04
Добавьте следующую строку в конец .bashrc.
Сохраните изменения в .bashrc и закройте gedit. Поставьте ваш .bashrc, чтобы изменения вступили в силу.
Создайте виртуальную среду Python для python3. Вы можете устанавливать пакеты Python3 только внутри этой виртуальной среды Python. Если вы также хотите установить пакеты Python 2.x, вам нужно создать другую виртуальную среду Python.
Новая виртуальная среда Python для python3 будет создана в
~/.virtualenvs/py3
каталоге..virtualenvs
скрытая папкаУстановите пакет.
источник
python3-virtualenv
иpython3-venv
пакеты доступны. Я предполагаю, чтоpython3-venv
это правильный пакет, и в этом случае я понятия не имею, какой целиpython3-virtualenv
служит.virtualenv
(исполняемый) для создания среды с произвольным интерпретатором, в том числе PyPy, просто отлично. Напримерvirtualenv -p python3 newenv
.Ну, это становится сложным. Ниже показано Ubuntu Xenial (базовый выпуск для Linux Mint, который я использую). Давайте разберемся:
pyvenv
Он ссылается на скрипт- обертку пакета Python 3.3+ stdlib . Но это не рекомендуется с Python 3.6.
Это также пакет PyPi , который является переключателем виртуальной среды.
venv
Это пакет Python 3.3+ stdlib , целью которого было улучшить и заменить пакет PyPi virtualenv (см. PEP 405 ). Но кажется, что это еще не там (по крайней мере, не так полнофункциональный).
python-virtualenv и virtualenv
Как вы можете видеть, он работает на Python 3.
python-virtualenv
Пакет предназначен для использования какpython2 -m virtualenv py2
. Посмотрим, какvirtualenv
работает свежая Ubuntu Xenial (docker run --rm -it ubuntu:xenial
):Как вы можете видеть, хотя
virtualenv
пакет используетсяpython3-virtualenv
, по умолчанию он создает среду Python 2.источник