python - pyenv-virtualenv python 版本在 env 激活时不会改变
问题描述
我在使用 pyenv-virtualenv 激活虚拟环境时遇到了一些问题。当我用 pyenv 激活一个环境时,它看起来像它工作。但是python版本没有改变。激活它的唯一方法是手动运行相应文件夹中的激活脚本:
/usr/bin/python
➜ ~ pyenv activate test_env
pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior.
(test_env) ➜ ~ which python
/usr/bin/python
(test_env) ➜ ~ source .pyenv/versions/test_env/bin/activate
(test_env) ➜ ~ which python
/Users/tom/.pyenv/versions/3.9.6/envs/test_env/bin/python
(test_env) ➜ ~
我将这两行添加到我的.zshrc
:
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
我在 M1 MacBook Pro 上的 macOS 11.6 上使用 zsh 和 Oh My Zsh。
解决方案
如果您使用的是 Pyenv 2.0+,还要添加eval "$(pyenv init --path)"
并.zprofile
确保您的终端将 Zsh 作为登录 shell 运行。
(请参阅https://github.com/pyenv/pyenv#readme中的 MacOS 中 Zsh 的安装说明)
推荐阅读
- reactjs - 为什么 React Hooks Axios API 调用会返回两次?
- bash - 如何正确传递带有空格的字符串作为单独的命令行参数?
- php - 在结帐/结帐时进行注册的新方法
- javascript - 为在新窗口中打开的 blob URL 设置文件名/标题
- tensorflow - 使用 TF_HUB 在 keras 中实现 BERT
- python - 什么可以让 pip 对成功安装撒谎?
- excel - 从函数的可视 ms 访问构建 Excel
- jboss - jboss 战争部署:当“hibernate.dialect”时,对 DialectResolutionInfo 的访问不能为空
- javascript - 如何找到安装时不存在的组件?
- c# - 实体框架核心:从子访问父