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
O que está acontecendo aqui? que é python-virtualenv == pyvenv? Ainda não está quebrado? O virtualenv original ainda funciona com python? se venv (muitas variações de nome !!!) faz parte da biblioteca padrão, https://docs.python.org/3/library/venv.html , por que estou sendo instruído a instalá-lo?
E quando tentei instalá-lo, obtive:
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
Nesse ponto, eu abortei, porque a instalação do python3-pip logo antes disso me deu
Setting up python3-setuptools (3.3-1ubuntu1) ...
Setting up python3-pip (1.5.4-1) ...
E eu não tinha certeza se os pacotes extras os substituiriam ou iriam para o python 2.7.
Eu li que o python 3 deveria ser o padrão daqui para frente. Como o 2.7 e o 3.4 estão lá e têm comandos separados, como não apenas certifico-me de que o Python 3 é o meu padrão, mas que qualquer coisa que eu instale vá para lá e seja usada por ele em vez do 2.7?
BTW, tentei o sudo apt-get python3-virtualenv e obtive: E: Não foi possível localizar o pacote python3-virtualenv
fonte
Respostas:
A maneira de instalar pacotes Python 3.x em um ambiente virtual Python é criar o ambiente virtual Python usando o criador do ambiente virtual Python 3 ( python3-virtualenv ). python3-virtualenv está nos repositórios padrão do Ubuntu no Ubuntu 14.10 e posterior.
Instale os pacotes Python 3.x em um ambiente virtual Python no 16.04 e posterior
Instale o criador do ambiente virtual Python 3
Crie um ambiente virtual Python para python3. Você só pode instalar pacotes python3 dentro deste ambiente virtual Python. Se você também quiser instalar pacotes Python 2.x, precisará criar outro ambiente virtual Python.
O novo ambiente virtual Python para python3 será criado no
env
diretório que está localizado no diretório atual.Instale pacotes Python.
Este é um novo ambiente virtual python3 com a versão mais recente do pip3, portanto, a instalação de pacotes Python nele funcionará muito bem.
Instale os pacotes Python 3.x em um ambiente virtual Python no Ubuntu 14.04
Adicione a seguinte linha ao final de .bashrc.
Salve as alterações em .bashrc e feche o gedit. Crie seu .bashrc para que as alterações entrem em vigor.
Crie um ambiente virtual Python para python3. Você só pode instalar pacotes python3 dentro deste ambiente virtual Python. Se você também quiser instalar pacotes Python 2.x, precisará criar outro ambiente virtual Python.
O novo ambiente virtual Python para python3 será criado no
~/.virtualenvs/py3
diretório.virtualenvs
é uma pasta oculta.Instale um pacote.
fonte
python3-virtualenv
epython3-venv
pacotes disponíveis. Estou assumindo quepython3-venv
é o pacote correto, caso em que não tenho idéia de que finalidadepython3-virtualenv
serve.virtualenv
(executável) para criar um ambiente com intérprete arbitrário, incluindo PyPy, por exemplovirtualenv -p python3 newenv
.Bem, fica complicado. O seguinte é mostrado no Ubuntu Xenial (que é a versão subjacente do Linux Mint que eu uso). Vamos resolver isso:
pyvenv
Refere-se ao script de wrapper do pacote stdlib do Python 3.3+ . Mas foi preterido desde o Python 3.6.
Também é um pacote PyPi , que é um alternador de ambiente virtual.
venv
É o pacote stdlib do Python 3.3+ cujo objetivo era melhorar e substituir o pacote virtualenv do PyPi (consulte o PEP 405 ). Mas parece que ainda não está lá (pelo menos não como um recurso completo).
python-virtualenv e virtualenv
Como você pode ver, ele roda no Python 3. O
python-virtualenv
pacote deve ser usado comopython2 -m virtualenv py2
. Vamos ver comovirtualenv
funciona o Ubuntu Xenial (docker run --rm -it ubuntu:xenial
):Como você pode ver, mesmo que o
virtualenv
pacote esteja usandopython3-virtualenv
, seu padrão é criar o ambiente Python 2.fonte