Nic*_*ini 5 python macos twisted python-2.7
你好,我试图运行扭曲随着蟒蟒却找不到扭曲.
我确实运行了$ pip install twisted但是它仍然无法使用.
ImportError:没有名为twisted.internet.protocol的模块
似乎大多数人 在/ usr/local/bin/python中有$ python
但我得到/Library/Frameworks/Python.framework/Versions/2.7/bin/python
这可能是问题吗?如果是这样,我该如何更改PATH环境?
小智 11
这很好.Python可能安装在您计算机的多个位置.当你得到一个新的Mac,默认的python目录可能是
'usr/bin/python2.7'
Run Code Online (Sandbox Code Playgroud)
您可能还有一个目录
'System/Library/Frameworks/Python.framework/Versions/2.7/bin/python'
Run Code Online (Sandbox Code Playgroud)
第一个是第二个的符号链接.
如果你使用HomeBrew来安装python,你可能会得到一个目录
'usr/local/bin/python2.7'
Run Code Online (Sandbox Code Playgroud)
您可能还有一个目录
'Library/Frameworks/Python.framework/Versions/2.7/bin/python'
Run Code Online (Sandbox Code Playgroud)
这正是我的目录所在.
第二个和第四个之间的区别,您可以在这里找到它 安装您的框架
在你的问题中,正如你提到的pip install成功,但安装的软件包仍然无法使用.我猜你的pip目录不在你的默认python目录中,而且这些包安装在你的pip目录所在的位置.(请用'which pip'它来检查)
例如,在我的计算机中,默认的pip目录是
/Library/Frameworks/Python.framework/Versions/2.7/bin/pip
Run Code Online (Sandbox Code Playgroud)
虽然,我也有点在usr/local/bin.
所以,通过'pip install'安装的所有软件包都存储在
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)
希望能解决你的疑问.类似的事情发生在我身上,我花了整整一夜才弄明白.
以下是解决方案:PYTHONPATH="/usr/local/lib/python2.7/site-packages:$PYTHONPATH"用于修改python目录或修改pip目录.但是,我会建议一个更好的方法,使用virtualenv.这可以隔离Python环境,并可以帮助您轻松地为每个项目设置包.
根据你为 OS X python 提供的路径,我猜你的 OS X (leopard?) 上的版本太旧了,所以我无法直接与我的机器进行比较。
但是,向基本 OS X 安装添加软件包始终是一件棘手的事情,我建议检查您添加的任何软件包的权限。执行 als -l /Library/Python/2.7/site-packages/并确保所有内容都有r权限(以及x目录权限)(IE-rwxr-xr-x或drwxr-xr-x)。
我最近遇到一个案例,asudo pip不会在已安装的软件包上设置用户读取权限,我相信“无模块”是我尝试使用它们时遇到的错误
由于在 OS X 上添加软件包非常棘手,因此网上有大量手动安装 Python 的指南。我在谷歌上匹配的第一个是在 OS X 上安装/更新 Python(使用风险自负,我个人没有遵循该指南)
(...第三部分安装系统Brew也是人们自动安装 python 的一种非常常见的方法)