Python模块导入错误“ Importerror:无模块名为mrjob.job”
题
系统:Mac OSX 10.6.5,Python 2.6
我尝试在下面运行Python脚本:
from mrjob.job import MRJob
class MRWordCounter(MRJob):
def mapper(self, key, line):
for word in line.split():
yield word, 1
def reducer(self, word, occurrences):
yield word, sum(occurrences)
if __name__ == '__main__':
MRWordCounter.run()
我收到以下错误:
:~ vskarich$ python mrjob_test.py < words
Traceback (most recent call last):
File "mrjob_test.py", line 1, in <module>
from mrjob.job import MRJob
ImportError: No module named mrjob.job
我曾经使用过easy_install这样:
sudo easy_install mrjob
此命令下载了所需的.EGG文件,而我的python网站包装目录如下:
:~ vskarich$ cd /Library/Python/2.6/site-packages
:site-packages vskarich$ ls
PyYAML-3.09-py2.6-macosx-10.6-universal.egg
easy-install.pth
README
mrjob-0.2.0-py2.6.egg
boto-2.0b3-py2.6.egg
simplejson-2.1.2-py2.6-macosx-10.6-universal.egg
我不确定在这里该怎么做,因为我对Python有些新。任何帮助将非常感激。谢谢!
解决方案
两个建议:
确保您没有任何文件或目录权限问题
site-packages
目录。如果您安装了另一个python 2.6的实例(除了苹果提供的一个实例
/usr/bin/python2.6
),确保您已安装了单独的版本的easy_install
为了它。作为以下的,您的输出表明它几乎可以肯定是使用苹果提供的easy_install
在/usr/bin
这是针对苹果供应的Python。最简单的方法是安装 分发 使用新Python的包装。
其他提示
我有同样的问题,我尝试了 pip install mrjob
, sudo easy_install mrjob
. 。它看起来像是成功安装了,但是当我运行一个简单的示例脚本时,我会收到导入错误。
我通过按照以下说明来工作以下说明: http://pythonhosted.org//mrjob/guides/quickstart.html#installation.
简而言之,我从github克隆了源代码,然后跑了 python setup.py install
. 。不过,我的问题可能与您的问题不同。在运行PIP安装和Easy_install后,我的网站包装目录中没有任何网站包装目录。
不隶属于 StackOverflow