python - OS X Mavericks 中安装的 Python 存在冲突

标签 python macos osx-mavericks homebrew

我陷入了困境,希望在我的笔记本电脑遭受 GBH 之前得到一些指导。

我已经使用 Macbook 几年了,没有出现任何问题,但是当我在工作中使用新的 iMac 时,我注意到每个人都建议使用 Homebrew 程序来安装新的 Python(尤其是在 Mavericks 上)。

现在我的笔记本电脑可以很好地使用原始 Python。但我决定尝试用新的 Homebrew 方式来做(顺便说一句,现在是 Mavericks )。

首先,由于其他一些冲突,我清除了 Mavericks,然后重新安装了一个新的。让 nginx、php-fpm、mysql 等正常工作。

现在是Python。

我可以使用 pip 安装软件包。但是当我尝试时

workon myproject

我得到:

/usr/bin/python: No module named virtualenvwrapper /usr/bin/python: No module named virtualenvwrapper

但无论如何它都会切换到该 virtualenv - 但不是项目所在的目录!

当我运行where python时我收到几个条目:

/usr/local/bin/python /usr/bin/python /usr/local/bin/python

我尝试修改我的路径,但不断收到其他错误,这些错误似乎都表明我的两个 Python 安装存在严重冲突。有没有一个简单的解决方案,或者我需要消灭hombrew并从头开始?或者干脆放弃 Homebrew 程序并使用内置的 OSX?

澄清我当前的 $PATH 是: /usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/op‌​t/X11/bin:/usr/local/go/bin:/Users/me/Development/Android/sdk/tools:/Users/me/Dev‌​elopment/Android/sdk/platform-tools

最佳答案

我的解决方案是一个不寻常的解决方案,但这里是:

在我的 .zshrc 文件中,我有以下布局:

ZSH=$HOME/.oh-my-zsh
ZSH_THEME="steeef"
plugins=(osx virtualenv virtualenvwrapper python github)
source $ZSH/oh-my-zsh.sh
# various aliases
export PATH=/usr/local/bin:/usr/local/sbin:$PATH

问题是 Oh My ZSH 插件 virtualenvwrapper 正在默认的 python 路径位置中查找,因为稍后尚未在 .zshrc 文件中设置自定义路径。

因此,解决方案是将 PATH 声明移到插件之前,如下所示:

ZSH_THEME="steeef"
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
plugins=(osx virtualenv virtualenvwrapper python github)
source $ZSH/oh-my-zsh.sh
# various aliases

现在,ZSH 插件引用正确的 Python 安装,因此引用正确的 Python 包路径。

关于python - OS X Mavericks 中安装的 Python 存在冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24462794/

相关文章:

c++ - 用 C++ 编写 NSTouchBar

haskell N00b : IntelliJ giving two errors

java - OS X 上是否有特定于 Java 的打开文件限制?

python - 如何选择添加到 Pandas Dataframe 的行并将其删除?

行的 python pandas 着色

python - 限制 Matplotlib 图例最佳位置选项

python - Websocket/event-source/... 实现将双向 RPC 暴露给 python/django 应用程序

macos - 用于 USB 系绳和 WiFi 的 OSX 链接聚合?

swift - UN用户通知中心。此应用程序不允许通知

eclipse - 应用程序无法打开,因为它来自身份不明的开发者