Ошибка импорта модуля Python «Импортеррор: нет модуля с именем mrjob.job»

StackOverflow https://stackoverflow.com/questions/4199984

  •  11-10-2019
  •  | 
  •  

Вопрос

Система: 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, а мой каталог Packages для 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; Любая помощь приветствуется. Благодарю вас!

Это было полезно?

Решение

Два предложения:

  1. Убедитесь, что у вас нет проблем с разрешениями файла или каталога для установленных яиц и файлов в site-packages каталог.

  2. Если вы установили еще один экземпляр Python 2.6 (помимо того, что яблочный поставлен /usr/bin/python2.6), убедитесь, что вы установили отдельную версию easy_install для этого. Как есть, ваш вывод указывает на то, что он почти наверняка установил с использованием Apple-поставленного easy_install в /usr/bin который предназначен для яблочного питона. Самый простой способ сделать это - установить Распределять Пакет с использованием нового Python.

Другие советы

У меня была та же проблема, я попробовал pip install mrjob, sudo easy_install mrjob. Анкет Похоже, что он успешно установил, но когда я запустил простой пример сценария, я получил ошибку импорта.

Я взял его на работу, следуя инструкциям по адресу: http://pythonhosted.org//mrjob/guides/quickstart.html#installation.

Короче говоря, я клонировал исходный код от GitHub и запустил python setup.py install. Анкет Моя проблема может отличаться от вашей. В моем каталоге Packages не было ничего для MRJOB после запуска PIP-Install и Easy_install.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top