У меня есть система Debian, в настоящее время работающая с Python 2.5.4. Я получил virtualenv правильно установлен, все работает нормально. Есть ли вероятность, что я могу использовать virtualenv с другой версией Python?
Я скомпилировал Python 2.6.2 и хотел бы использовать его с некоторым virtualenv. Достаточно ли перезаписать двоичный файл? Или я должен что-то изменить в отношении библиотек?
Ответы:
Просто используйте
--python
(или короткий-p
) параметр при создании экземпляра virtualenv, чтобы указать исполняемый файл Python, который вы хотите использовать, например:NB Для Python 3.3 или более поздней версии, обратитесь к Aelfinn в ответ ниже.
источник
virtualenv -p `which python2.6` <path/to/new/virtualenv>
Начиная с Python 3, Документы Python предлагают создать виртуальную среду с помощью следующей команды:
Обратите внимание, что
venv
не разрешается создавать виртуальные среды с другими версиями Python. Для этого установите и используйтеvirtualenv
пакет .Устаревшая информация
pyvenv
Сценарий может быть использован для создания виртуальной средыно он не рекомендуется с Python 3.6.
источник
python3 -m venv <envname>
чтобы не нуждаться в скриптах-заглушках для всего.pyvenv
сценарий устарел в Python 3.6+, а сам базовыйvenv
модуль - нет. Так что используйте,python 3 -m venv <myenvname>
как говорит @PaulEveritt.pyvenv
илиpython3 -m venv ...
НЕ устанавливайтеpython-config
скрипт. Это означает, что даже после активации вашей среды Python3 для всей системыpython-config
будут вызываться запутанные последствия. Посмотрите этот отчет об ошибке за 2011 год github.com/pypa/virtualenv/issues/169 и мой вопрос stackoverflow.com/questions/42020937/…venv
не позволяет создавать virtualenv с другими версиями Python». - Ты уверен, что это правда? Мне кажется, что это работает нормально, если я создаю его с определенной версией Python, напримерpython3.5 -m venv <myenvname>
(при условии, что у меня есть эта версия Python).venv
с определенной версией Python - использовать эту версию при настройке. Например:python3.5 -m venv venv
Это шаги, которые вы можете выполнить, когда находитесь в общедоступной среде хостинга и вам необходимо установить и скомпилировать Python из исходного кода, а затем создать
venv
из вашей версии Python. Для Python 2.7.9. вы бы сделали что-то вроде этого:виртуальная среда
Естественно, это может быть применимо к любой ситуации, когда вы хотите воспроизвести точную среду, в которой вы работаете и в которой развертываете.
источник
~/.localpython/bin/virtualenv
вместо простоvirtualenv
настройки для завершения без ошибок. Кроме того, используйтеsource ve/bin/activate
вместоsource activate
.источник
-p
.python3.6
но не хотите прикасаться кpython3.5
установленному на вашем компьютере?Есть более простой способ,
Благодаря комментарию это работает, только если у вас установлен python2.7 на системном уровне (например, /usr/bin/python2.7).
В противном случае, если вы используете homebrew, вы можете использовать путь, чтобы дать вам то, что вы хотите.
Вы можете найти путь к вашей установке Python с помощью
Это также будет работать с питоном 3.
В конечном итоге уплотняется до:
источник
virtualenv venv --python=python3.6
аvirtualenv env --python=python2
virtualenv venv --python=<insert_your_python_version_here>
где<insert_your_python_version_here>
был в моем случаеC:\Python\Python368\python.exe
Под Windows для меня это работает:
без
python.exe
меняWindowsError: [Error 5] Access is denied
у меня установлен Python2.7.1 с virtualenv 1.6.1, и я хотел python 2.5.2.источник
Mac OSX 10.6.8 (Snow Leopard):
1) Когда вы это делаете
pip install virtualenv
, команда pip ассоциируется с одной из ваших версий python иvirtualenv
устанавливается в эту версию python. Ты можешь сделатьчтобы увидеть, что это за версия Python. Если вы видите что-то вроде:
затем сделайте:
Вы можете увидеть версию Python в выводе.
По умолчанию это будет версия python, которая используется для любой новой среды, которую вы создаете. Однако вы можете указать любую версию python, установленную на вашем компьютере, для использования в новой среде с помощью
-p flag
:http://docs.python-guide.org/en/latest/dev/virtualenvs/
virtualenv
просто копирует python из местоположения на вашем компьютере во вновь созданный каталог my_env / bin /.2) Системный Python включен, в
/usr/bin
то время как различные версии Python, которые я установил, по умолчанию были установлены в:3) У различных установленных мной питонов есть имена вроде
python2.7
илиpython3.2
, и я могу использовать эти имена вместо полных путей.======== VIRTUALENVWRAPPER =========
1) У меня были некоторые проблемы с работой virtualenvwrapper. Это то, что я в итоге вставил
~/.bash_profile
:2) Работа
-p option
с virtualenvwrapper работает иначе: я должен указать полный путь к интерпретатору python, который будет использоваться в новой среде (когда я не хочу использовать версию python по умолчанию):В отличие от virtualenv, virtualenvwrapper создаст среду в месте, указанном переменной среды $ WORKON_HOME. Это держит все ваше окружение в одном месте.
источник
which pip
не говорит мне версию Python. Это дает мне это/usr/local/bin/pip
./usr/local/bin
и делаете$ ls -al pip
, вы должны увидеть что-то вроде:pip -> ../../../Library/Frameworks/Python.framework/Versions/2.7/bin/pip
mkproject
это команда, которую нужно использовать, если вы хотите, чтобы она создавала как каталог проекта, так и виртуальную среду с заданной версией Python.mkproject -p /usr/bin/python3.6 myNewPython36Project
Эти две команды должны работать нормально.
virtualenv -p python2 myenv
(Для python2)virtualenv -p python3 myenv
(Для python3)источник
Предположим, у вас в настоящее время установлен python 2.7 в вашей virtualenv. Но хотите использовать
python3.2
, вы должны обновить это с помощью:Затем активируйте свой virtualenv с помощью:
и затем выполните:
python --version
в оболочке, чтобы проверить, обновлена ли ваша версия.источник
-p
.Вы можете позвонить
virtualenv
с нужной вам версией Python. Например:Или, в качестве альтернативы, прямо укажите свой путь в виртуальности. например для окон:
И запустив:
вы можете увидеть версию Python, установленную в виртуальной среде
источник
pip3 install virtualenv
первым-p
Подход хорошо работает, но вы должны помнить , чтобы использовать его каждый раз. Если ваша цель состоит в том, чтобы перейти на более новую версию Python в целом, это будет проблемой, а также может привести к ошибкам.Другой вариант - установить переменную окружения, которая делает то же самое, что и
-p
. Установите это через свой~/.bashrc
файл или везде, где вы управляете переменными среды для ваших сеансов входа в систему:Затем
virtualenv
будет использовать это каждый раз, когда вы не указываете-p
в командной строке.источник
export VIRTUALENVWRAPPER_PYTHON=/path/to/desired/version
соответствии с документами virtualenvwrapper не сработала, но это решение сработало?virtualenvwrapper
использует при запуске, не имеет ничего общего с установками.Еще проще, используя подстановку команд, чтобы найти для вас python2:
virtualenv -p $(which python2) <path/to/new/virtualenv/>
Или при использовании virtualenvwrapper:
mkvirtualenv -p $(which python2) <env_name>
источник
Для Mac (High Sierra) установите virtualenv на python3 и создайте virtualenv для python2:
источник
python3 -m pip install virtualenv
На Mac я использую pyenv и virtualenvwrapper. Я должен был создать новый virtualenv. Вам нужен homebrew, который, я полагаю, вы установили, если вы работаете на Mac, но просто для удовольствия:
Я также сначала заморозил свои требования, чтобы я мог просто переустановить новый virtualenv с помощью:
источник
mkvirtualenv -p ~/.pyenv/versions/2.7.10/bin/python {virtual_env_name}
версии, а не версия. Если бы SO допускал короткие правки, я бы это исправил.pyenv
включает в себя поддержку virtualenv черезpyenv-virtualenv
плагин, поэтому я считаю, что мне не нужен virtualenvwrapper. Более подробно в моем ответе pyenv .[Ноябрь 2019] Мне нужно было установить среду Python 3.7 (env) в моей системе Arch Linux на основе Python 3.8. Python 3.7 больше не присутствовал в системе, поэтому я не мог понизить версию Python до установки необходимого мне пакета.
Кроме того, я хотел использовать этот пакет / Python 3.7 в виртуальной среде (venv). Вот как я это сделал.
Загрузите исходные файлы версии Python:
Я скачал исходные файлы Python 3.7.4 с
в
/mnt/Vancouver/apps/python_versions/src/Python-3.7.4.tgz
Затем я извлек этот архив (исходные файлы) в
/mnt/Vancouver/apps/python_versions/src/Python-3.7.4/
Установка:
[Примечание: в моей системе env, а не venv.]
Проверьте установленные версии Python:
Как создать venv для конкретной версии Python:
Создайте Python 3.7 venv [на операционной системе Python 3.8 / system]:
Добавлено в
~/.bashrc
:Тест Python 3.7 venv:
источник
В подсистеме Windows для Linux:
Создайте среду для python3:
Активируйте это:
источник
На окнах:
или
Он использует
py
панель запуска, которая найдет подходящий исполняемый файл Python для вас (при условии, что он установлен).источник
Да , приведенные выше ответы верны и отлично работают на Unix-системах, таких как Linux и MAC OS X .
Я попытался создать virtualenv для Python2 и Python3 с помощью следующих команд.
Здесь я использовал venv2 и venv3 в качестве их имен для Python2 и Python3 соответственно.
источник
У меня сработало
источник
Я использую pyenv для управления моей версией Python.
Проверьте версию Python:
Создайте виртуальную среду с помощью venv :
Затем активируйте виртуальную среду:
Проверьте версию Python:
Возможно, вам придется удалить предыдущую виртуальную среду
источник
Они кажутся немного сложными для Windows. Если вы работаете в Windows с Python 3.3 или более поздней версии, вы можете использовать средство запуска Python,
py
чтобы сделать это намного проще. Просто установите другую версию Python и запустите:Это создаст виртуальную среду, называемую
env
в вашем текущем каталоге, используя python[my version]
. Например:Это создает виртуальную среду
env
с именем python3.7 и активирует ее. Никаких путей или других сложных вещей не требуется.источник
py -3.7 -m venv env
вместо этого (-m
отсутствует)?Ссылка на создание virtualenv
источник
Для систем Debian (debian 9) в 2019 году я обнаружил простое решение, которое может решить проблему в виртуальной среде.
Предположим, что виртуальная среда была создана с помощью:
но есть только версии
python2
иpython2.7
, и вам нужны последние возможности python3.7.Затем просто запустите команду:
добавит пакеты python3.7, если они уже доступны в вашей системе.
источник
Это была ошибка с virtualenv. Только обновление вашего пипса должно быть исправлением.
pip install --upgrade virtualenv
источник
Как уже упоминалось в нескольких ответах, использование virtualenv является чистым решением. Однако небольшая ловушка, о которой все должны знать, состоит в том, что, если псевдоним для python установлен в bash_aliases, например:
этот псевдоним также будет использоваться внутри виртуальной среды. Таким образом, в этом сценарии, работающем
python -V
внутри виртуального env, всегда будет выводиться3.6
независимо от того, какой интерпретатор используется для создания среды:источник
У меня это работало на windows с установкой python 2:
Вот как я создал виртуальную среду Python 3 на моей существующей установке Python 2.
источник
Вы можете сделать это, выполнив это:
источник
Да, вам просто нужно установить другую версию python и определить местоположение вашей другой версии python в вашей команде, например:
источник
Вот пошаговая инструкция по созданию виртуальной среды в папке кода Visual Studio: я использовал Powershell (режим администратора):
1. Я создаю папку VSCode - «D: \ Code_Python_VE», в которой я хочу создать виртуальную среду.
2. Далее набираю команду - «pip3 install virtualenv». (D: \ Code_Python_VE> pip3 install virtualenv) 3. D: \ Code_Python_VE> python3 -m venv project_env
4. D: \ Code_Python_VE> project_env \ Scripts
\ activ.bat 5. D: \ Code_Python_VE> ls - появится новый список каталог "project_env".
6. D: \ Code_Python_VE> code. Это запустит Visual Studio Code. Убедитесь, что команда (код.).
7. Создайте файл launch.jason со следующим содержимым:
(Пожалуйста, найдите, как перейти в окно «Отладка» и «Добавить новую конфигурацию в VS Code»).
(project_env) d: \ Code_Python_VE> python -m pip install --upgrade
Я надеюсь, что это поможет.
источник
UBUNTU 19.04 / Global Python 3.7.
Это сработало для меня, включив среду Python 3.8, используя рекомендованный venv для разработки на Python 3.
Установите 3.8 и 3.8 модуль venv
$ sudo apt install python3.8 python3.8-venv ## плюс любые другие необходимые вам модули
Создайте свою виртуальную среду, используя версию Python, которую вы хотите в этой среде
$ /usr/bin/python3.8 -m venv python38-env
переключиться в вашу виртуальную среду
$ source python38-env / bin / activ
питон -V = питон 3.8
источник