Как заставить virtualenv запускать Python 3 вместо Python 2.7? - PullRequest
0 голосов
/ 08 мая 2018

На Mac, если я просто открываю новое окно терминала и запускаю:

python --version

, я получаю:

3.6

, но если я делаю это:

 virtualenv venv && source venv/bin/activate

и затем в этой среде я запускаю:

python --version

Я получаю:

2.7

Мне нужен virtualenv для запуска 3.6.Как я могу это сделать?

Это:

/usr/bin/python

равно 2,7, но это:

/usr/local/bin/python 

равно 3,6.Путь для моего обычного пользователя /usr/local/bin подходит до /usr/bin/.Virtualenv работает как кто-то еще?Как мне контролировать его путь?

Я запустил это:

virtualenv -p /usr/local//Cellar/python/3.6.5/bin/python3 venv

, но затем я делаю это:

virtualenv venv && source venv/bin/activate

и я работаю в среде с 2.7.

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Самый простой способ - поменять python глобально на Python3, так как я думаю, что вы используете его чаще, чем Python 2.7 (или, надеюсь, всегда). Чтобы добиться этого, добавьте следующую строку кода в конце вашего .bash_profile:

alias python='python3'

virtuanenv использует / usr / bin / python , следовательно, оно должно работать сейчас.

Если вы не хотите изменять его глобально, используйте следующую команду для создания виртуальной среды Python3.6:

python3 -m venv venv

или явная версия Python, если у вас установлено несколько версий Python3:

python3.6 -m venv venv

В конце более подробное предложение: я рекомендую вам прочитать кое-что о pipenv , поскольку это новый рекомендуемый способ обработки виртуальных сред и управления всеми пакетами одновременно. Это очень просто и устраняет много общих проблем. Вот хорошая статья от realpython.com на эту тему.

Надеюсь, я смогу вам помочь. Хорошего дня.

0 голосов
/ 08 мая 2018

В Python 3 вам больше не нужен virtualenv скрипт, вам просто нужно использовать модуль venv, включенный в стандартную библиотеку lib:

python3 -m venv myvenv

Но если вы действительно хотите продолжать использовать старый скрипт virtualenv, вы можете - указать интерпретатор явно с опцией -p:

virtualenv -p /path/to/python3 myvenv
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...