[英]zsh: commands not working for pip, conda, python
所以这是我的故事:众所周知,macos 预装了 pyhton 2.7。 几年前,我安装了 python 3.7.0 ,一切顺利。 我开始使用 Tensorflow ,在此期间 tensorflow 与3.7.0不兼容,因此以某种方式将版本切换到3.6.6 :)。 一段时间后,我安装了 anaconda 并安装了 3.7.3。 在此刻:
然后我学会了通过终端创建虚拟环境,并使用以下代码创建虚拟环境:
pip install virtualenv
virtualenv project_env
在我激活虚拟环境后,它显示的 python 版本是3.7.3。
然后最近我将终端 shell 更改为 zsh,现在一切都搞砸了。 我是
virtualenv project_env
创建虚拟环境。 它说找不到命令。 为什么? 它用于使用 python 3.7.3创建虚拟环境。python3 -m venv project_env
这将使用 python 3.6.6创建虚拟环境。 如果我使用python3.7 -m venv project_env
它使用 python 3.7.0创建环境。我需要帮助解决安装 zsh 后引起的上述问题,并帮助我在需要的地方访问 python 版本。 我如何将 python 版本 3.7.0 更新到最新或任何特定版本,如 3.7.3。 如何使用 python 3.8.4,我的意思是我在 python 3.7.0 中导入 tensorflow 时遇到了麻烦。
我希望你能理解我的麻烦,并搜索了很多解决方案。 我现在很困惑,甚至无法弄清楚我的问题的标题。
基于您的 shell 现在找不到 conda 的事实,您应该查看您的“路径”环境变量。 每当您从一个 shell 更改为另一个时,您需要查看并可能创建或修改 shell 在启动时使用的文件。 这些文件设置您的环境(PATH、PYTHONPATH 等)、创建别名等。您可能需要创建 .zshrc、.zprofile、.zlogin 等文件并添加与之前 shell 的启动文件相同的设置。
示例:如果您之前使用过 bash shell,则需要修改 .zshrc 文件以将您的设置包含在 .bashrc 文件中。 语法可能不同,因此直接复制可能有效,也可能无效。
试试这个作为一个快速的临时修复(可能会也可能不会,取决于你当前的 ~/.profile 设置:
创建一个 ~/.zprofile 文件,其中包含以下代码:
emulate sh
. ~/.profile
emulate zsh
参考资料: https://superuser.com/questions/187639/zsh-not-hitting-profile http://zsh.sourceforge.net/Intro/intro_3.ZFC35FDC70D5FC69D2569C28
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.