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
в любом каталоге за пределами текущего.