[英]Issues with pyenv-virtualenv: Python and PIP not changed when activating / deactivating virtual environment
[英]Pyenv virtualenv not activating, tried everything I know
如果有人可以帮助我解决这个问题,那就太好了。 目前,我已经尝试了过去几天的所有方法,以使其无法正常工作。 我已经使用pyenv和插件virtualenv大约一个月了,没有任何问题。 有一天,我醒来后发现无法激活pyenv创建的virtualenv。 源bin / activate停止工作。 从重新安装pyenv到重新安装Kubuntu并重试均未成功,我做了一切。 我不知道怎么了。 从下图可以看到,我没有任何错误。 据我了解,每次我激活virtualenv时,它都会在控制台中以我的名字显示,而不再显示该名称。 我确保添加“ echo'eval“ $(pyenv virtualenv-init-)”'>>〜/ .bashrc”以及所有其他需要的东西。 pyenv可用的所有其他选项仍然可以正常工作,这仅是激活我的virtualenv。 请帮忙。 谢谢
这也让我有些了解,特别是因为我之前使用virtualenvwrapper管理我的virtualenv。 有用的是,我浏览了该函数并看到了以下内容:
if [[ "$(pyenv version-name)" == "system" ]]; then
pyenv deactivate || true
elif [[ "$VIRTUAL_ENV" != "$(pyenv prefix)" ]]; then
pyenv deactivate || true
pyenv activate 2>/dev/null || true
fi
没有涵盖的是,当您在pyenv中创建virtualenv时,它会显示为一个版本。 所以当你这样做
pyenv versions
您将获得虚拟环境中的python列表。 为了使其正常工作,它结合了旧功能和新功能。 你可以做:
user@server [00:00:00] [~]
-> % cd Development/test
user@server [00:00:00] [~/Development/test]
-> % pyenv shell test
(test)user@server [00:00:00] [~/Development/test]
-> %
或自动:
user@server [00:00:00] [~]
-> % cd Development/test
user@server [00:00:00] [~/Development/test]
-> % pyenv local test
(test)user@server [00:00:00] [~/Development/test]
-> %
这会删除带有python版本的.python-version文件,pyenv会将其读取并用作virtualenv python。
只要记住要像pyenv的python版本一样管理您的virtualenv,就应该可以保持顺畅。 例如,要自动禁用,只需更改目录。 如果您使用pyenv shell,则需要pyenv shell --unset或pyenv shell {another_version}才能移动virtualenv。
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.