前一段时间我在Mac上安装了Python2.7和3.5,并且能够成功使用它们。不久前我安装了Anaconda和IPython。我已经使用它们进行了几周的原型设计和控制台编程。
在我为Django和Flask项目回到常规Python之后,我发现了一件令人不快的事情。也就是说,每当我尝试运行python
或python3
时,我都会收到以下错误:
dyld: Library not loaded: @executable_path/../.Python
Referenced from: /Users/name/anaconda3/bin/python3
Reason: image not found
Abort trap: 6
当我运行conda
时,我也会遇到同样的错误。
如果我使用virtualenv django-project
创建一个新的虚拟环境,我可以激活它,它允许我成功运行Python 2.7。
我的问题如下。如何在保留工作Anaconda和IPython的同时为命令行修复python
和python3
?如何确保虚拟环境能够携带Python3?
答案 0 :(得分:1)
我也使用 macOS,我从不弄乱甚至处理系统 python。我已经通过 Homebrew (https://brew.sh) 安装了 python3,并且我总是使用虚拟环境。我的主目录中有一个(我的默认目录),我正在处理的每个项目都有一个。
如果您不在 virtualenv 中,您的经验法则应该是永远不要运行“pip”。与$ echo $VIRTUAL_ENV
核对。
使用当前安装的库在 python3 中创建/重新创建虚拟环境:
$ pip freeze > requirements.txt
$ rm -rf .venv
$ deactivate
$ virtualenv -p python3 .venv
$ source .venv/bin/activate
$ pip install -r requirements.txt
如果您只想创建一个新的虚拟环境,然后只安装您想要/稍后需要的模块,您可以跳过编写和读取 requirements.txt 的步骤。
答案 1 :(得分:0)