我使用以下命令在macOS上设置我的Python dev环境:
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“pragmatic”的方式,因为通过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的pyenv拷贝 - 在我的情况下是3.7.0。关于安装CPython 3.6.6的提示来自何处?
简短的回答:如果你看到这样奇怪的行为,请运行pipenv --support
并仔细阅读。
我有一个流浪的Pipfile
,它挂在我的项目的父目录中,该目录指示要安装的Python版本。我猜测在pipenv install
期间有某种递归搜索,它在当前目录之外的任何目录中查找Pipfile
。