编辑:在开始删除/修改安装之前,请先浏览一下StvnW的答案/摘要,以确保您正在应用适合您的解决方案。
我已经安装了python 2.7.5和pip [编辑:mac OSX Mountain Lion。]我在终端中运行了“pip install praw”。都好。当我运行python并运行“import praw”时,我得到:
...$ python
Python 2.7.5 (v2.7.5:ab05e7dd2788, May 13 2013, 13:18:45)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import praw
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named praw
...来自脚本的相同ImportError。
当我安装praw时,我得到了这个:
$ pip install praw
Downloading/unpacking praw
Downloading praw-2.1.10.tar.gz (83kB): 83kB downloaded
Running setup.py egg_info for package praw
Requirement already satisfied (use --upgrade to upgrade): requests>=1.2.0 in
/usr/local/lib/python2.7/site-packages (from praw)
Requirement already satisfied (use --upgrade to upgrade): six in
/usr/local/lib/python2.7/site-packages (from praw)
Requirement already satisfied (use --upgrade to upgrade): update-checker>=0.6 in
/usr/local/lib/python2.7/site-packages (from praw)
Requirement already satisfied (use --upgrade to upgrade): setuptools in
/usr/local/lib/python2.7/site-packages/setuptools-1.1.6-py2.7.egg (from update-
checker>=0.6->praw)
Installing collected packages: praw
Running setup.py install for praw
Installing praw-multiprocess script to /usr/local/bin
Successfully installed praw
Cleaning up...
在python中如果我运行帮助('modules')它就不存在了。
相对较新的python,我无法通过谷歌搜索对此进行排序。任何提示都会非常感激。
编辑:
SITREP:
我已经卸载了2.7.2,卸载了praw,并卸载了(自制)pip。我运行python 2.7.5并且它找不到模块(正如你所怀疑的那样。)然后我用easy_install重新安装了pip,现在2.7.5正在寻找praw但是给出了这个错误:
$ python
Python 2.7.5 (v2.7.5:ab05e7dd2788, May 13 2013, 13:18:45)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import praw
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.7/site-packages/praw/__init__.py", line 43, in <module>
from update_checker import update_check
File "/Library/Python/2.7/site-packages/update_checker.py", line 11, in <module>
from pkg_resources import parse_version as V
ImportError: No module named pkg_resources
>>>
感谢您的帮助到目前为止,虚假安装是问题1的根源。
最终问题的解决方案可以在这里找到:
我希望有一些方法可以为未来的读者总结这一点,但我已经做了很多事情,我不再记得那些解决了什么问题。我基本上卸载了所有内容(python 2.7.2,2.7.5,praw,pip,)从http://python.org/download/重新安装2.7.5,重新安装pip with easy_install(和sudo命令)而不是自制程序,重新安装praw with sudo命令,以及按照上面链接中后续模块错误的说明进行操作。希望有所帮助。 :)
答案 0 :(得分:4)
OS X系统版本的Python位于/System/Library/Frameworks/Python.Framework/<verson>
,每个版本都链接到/Library/Python/<version>/site-packages
。好像你已经安装了另一个版本的python和/或pip到/usr/local
,但是当你调用python时,你仍然会得到系统版本。
试试这个:
$ /usr/local/bin/python
>>> import praw
如果您打算使用Python做任何工作,我还建议您查看pyenv和virtualenv等工具。 Pyenv可让您轻松管理和切换多个版本(包括微型版本x.x.3,x.x.5等)。 Virtualenv允许您创建独立的Python环境,您可以在其中确定特定项目特定的站点包版本。
编辑(摘要):
sudo easy_install pip
将在/ System / Library / Python /&lt; version&gt;下安装pip。调用该pip会将软件包安装到/ Library / Python /&lt; version&gt; / site-packages brew install python
将安装第二版python - 包括pip - 在/ usr / local /下。该pip将把包放在/ usr / local / lib / python&lt; version&gt; / site-packages /`。which python
和which pip
有助于排查问题。答案 1 :(得分:1)
很奇怪。我怀疑你的mac os上有另一个版本的python2.7
答案 2 :(得分:0)
如果您使用的是mac。使用which python
检查shell路径上的python版本。然后确保您尝试运行的脚本中的shebang行使用相同版本的python。
在我输入的终端中输入
which python
获得输出/usr/local/bin/python
我去了我试图运行的脚本并将以下内容添加到第一行
#!/usr/local/bin/python
然后我回到了我的终端。检查我是否与我想要运行和输入的脚本位于同一目录中
./my_script.py
如果您此时未看到任何输出,请在终端中键入chmod +x my_script.py
,确保您的脚本已启用执行权限。然后尝试使用./my_script.py