是什么导致了导入恐怖:在os X上升级Python后,没有名为pkg_resources的模块?
我刚刚在Mac上将Python更新为2.6.4。 我是从dmg软件包安装的 二进制文件似乎没有正确设置我的Python路径,因此我在是什么导致了导入恐怖:在os X上升级Python后,没有名为pkg_resources的模块?,python,ipython,Python,Ipython,我刚刚在Mac上将Python更新为2.6.4。 我是从dmg软件包安装的 二进制文件似乎没有正确设置我的Python路径,因此我在.bash\u profile中添加了'/usr/local/lib/python2.6/site-packages' >>> pprint.pprint(sys.path) ['', '/Users/Bryan/work/django-trunk', '/usr/local/lib/python2.6/site-packages', '
.bash\u profile中添加了'/usr/local/lib/python2.6/site-packages'
>>> pprint.pprint(sys.path)
['',
'/Users/Bryan/work/django-trunk',
'/usr/local/lib/python2.6/site-packages',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python26.zip',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-darwin',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-old',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload',
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages']
显然,这不是所有必需的路径,因为我无法运行iPython
$ ipython
Traceback (most recent call last):
File "/usr/local/bin/ipython", line 5, in <module>
from pkg_resources import load_entry_point
ImportError: No module named `pkg_resources`
$ipython
回溯(最近一次呼叫最后一次):
文件“/usr/local/bin/ipython”,第5行,在
从打包资源导入加载入口点
ImportError:没有名为'pkg_resources'的模块`
我做过谷歌搜索,但我真的不知道如何安装pkg_资源
,或者确保它在路径上
我需要做什么来修复此问题?在我的系统(OSX 10.6)上,该软件包位于
/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py
我希望这能帮助你找出它是丢失了还是不在你的道路上;DRpkg_资源
由或提供
[更新2]正如在PyCon 2013上宣布的那样,分发
和设置工具
项目已经重新合并Distribute
现在已不推荐使用,您只需使用最新的setuptools
。试试这个:
curl -O https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
python ez_setup.py
或者,更好的方法是使用电流作为高级接口,并在外壳下使用setuptools
[针对OP具体问题的详细回答]:
你在问题中没有说,但我假设你是从苹果提供的Python(10.5上的2.5或10.6上的2.6.1)升级的,或者你是从Python.org上的Python 2.5升级的。在所有这些情况下,重要的一点是每个Python实例都有自己的库,包括自己的站点包库,这是安装其他包的地方。(顺便说一句,默认情况下,它们都不使用/usr/local/lib
)这意味着您需要安装新的python 2.6所需的附加软件包。最简单的方法是首先确保新的python2.6首先出现在您的搜索$PATH
(也就是说,键入python2.6
会按预期调用它);python2.6安装程序应该已经修改了您的.bash\u配置文件
,将其框架bin目录放在$PATH
的前面。然后按照此处的说明安装easy\u install
。此步骤还将自动安装pkg_资源
模块
然后使用新安装的easy\u install
(或pip
)版本安装ipython
easy_install ipython
或
它应该自动安装到该python实例的正确的站点包
位置,您应该准备好了。如果在mac os 10.7上升级python,而pkg_资源不起作用,修复此问题的最简单方法就是如上所述重新安装setuptools
sudo pip install setuptools --upgrade
or sudo easy_install install setuptools --upgrade
我遇到了相同的ImportError
。不知怎的,setuptools
包在我的Python环境中被删除了
要解决此问题,请运行setuptools
的安装脚本:
curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python
如果您有低于0.6的任何版本或任何setuptools
,则必须先卸载它*
有关更多详细信息,请参阅
*如果您已经有了一个可用的分发
,那么将其升级到“兼容性包装器”将更容易切换到设置工具
。但是如果事情已经坏了,不要尝试那样做。原因可能是Python模块不在PYTHONPATH中
如果你不加载IPython,然后
python setup.py安装
安装程序不会将模块IPython添加到python路径中。
您可能希望手动将其添加到PYTHONPATH。在您执行以下操作后,它应该可以工作:
导出PYTHONPATH=/pathtoIPython:$PYTHONPATH
在.bashrc或.profile中添加这一行以使其永久化。我意识到这与OSX无关,但在嵌入式系统(Beagle Bone Angstrom)上,我收到了完全相同的错误消息。安装以下ipk包解决了此问题
opkg install python-setuptools
opkg install python-pip
我在Ubuntu上遇到了这个错误,以下几点对我有效:
已删除dropbox二进制文件,并通过运行以下命令再次下载它们:
sudo rm -rf /var/lib/dropbox/.dropbox-dist
dropbox start -i
我在从事高速公路相关项目时遇到了同样的问题
1) 所以我下载了setuptools.-0.9.8.tar.gz表单并将其解压缩
2)然后我获取pkg_资源模块并将其复制到需要的文件夹中。
**在我的例子中,文件夹是C:\Python27\Lib\site packages\autobahn在我的例子中,包python pygments
丢失了。您可以通过以下命令进行修复:
sudo-apt-get-install-python-pygments
如果pandoc有问题
。您应该安装pandoc
和pandoc citeproc
sudo apt get install pandoc pandoc citeproc
只有在您可以卸载python的情况下才尝试此操作
我使用
brew uninstall python
然后使用
brew install python
然后成功了 昨晚我试图安装setuptools时把事情搞砸了。我忘记了通过运行.egg文件来完成安装,就好像它是一个shell文件一样sh setuptools-0.6c11-py2.6.egg我想这是在某处添加了新的Python路径。注意:为我解决此问题的实际答案如下-请参阅,我对这个旧答案进行了一些更新,使其更加明显,解决方案是安装分发或setuptools
。具体步骤见链接。OP的问题涉及其他项目。进一步编辑以反映distribute
对新设置工具的反对,并提及pip
。获取python ez_setup.py文件“ez_setup.py”,第1行^SyntaxError:无效语法
:(这是正确的方法。没有pkg_资源,easy_install
也可能无法工作(因此eas
brew install python