pipenv настаивает на установке Python 3.6

Я настроил свою среду разработки Python на macOS, используя следующие команды:

brew install pyenv
pyenv install 3.7.0
pyenv install 2.7.15
pyenv global 3.7.0

Я также добавил следующее к моему .bash_profile:

export PATH="/Users/me/.local/bin:$PATH"
eval "$(pyenv init -)"

Кажется, Python работает как положено:

01:29 $ python --version
Python 3.7.0

Затем я установил pipenv " прагматичным" способом, поскольку при установке через Homebrew также будет установлена ​​целая копия Python (чего я не хотел, так как уже использовал pyenv):

pip install --user pipenv

Теперь, когда я пытаюсь запустить новый проект pipenv, я получаю следующее сообщение:

01:28 $ mkdir my-new-project && cd my-new-project && pipenv install
Warning: Python 3.6 was not found on your system...
Would you like us to install CPython 3.6.6 with pyenv? [Y/n]:

Я подумал, что pipenv автоматически использует любую доступную копию Python для Python - в моем случае это 3.7.0. Откуда приходит подсказка об установке CPython 3.6.6?

1 ответ

Короткий ответ: если вы видите странное поведение, как это, запустите pipenv --support и внимательно прочитайте.

У меня был бродячий Pipfile это зависало в родительском каталоге моего проекта, который диктовал версию Python для установки. Я предполагаю, что есть какой-то рекурсивный поиск во время pipenv install который ищет Pipfile в любом каталоге за пределами текущего.

Другие вопросы по тегам