ImportError: нет модуля с именем simplejson
Я пытаюсь запустить команду для установки bespinclient на моем ноутбуке Windows, но каждый раз, когда я выполняю команду python bootstrap.py --no-site-packages
, я получаю сообщение об ошибке:
ImportError: нет модуля с именем simplejson
Я использую инструменты сборки Mozilla для запуска этих команд Linux.
Ответы
Ответ 1
Это означает, что вы должны установить simplejson
. В более новых версиях python он был включен по умолчанию в дистрибутив python и переименован в json
. Поэтому, если вы находитесь на python 2.6+, вы должны изменить все экземпляры simplejson
на json
.
Для быстрого исправления вы также можете отредактировать файл и изменить строку:
import simplejson
в
import json as simplejson
и, надеюсь, все будет работать.
Ответ 2
@noskio правильно... это просто означает, что simplejson
не найден в вашей системе, и вам нужно установить его для Python старше 2.6. одним из способов является использование инструмента setuptools easy_install
. с ним вы можете установить его так же легко, как: easy_install simplejson
UPDATE (февраль 2014): это, вероятно, старые новости для многих из вас, но pip - это более современный инструмент, который работает аналогичным образом (т.е. pip install simplejson
), но он также может удалять приложения.
Ответ 3
В Ubuntu/Debian вы можете установить его с помощью apt-get install python-simplejson
Ответ 4
Иногда возникают ошибки разрешения. Попробуйте:
sudo pip install simplejson
Надеюсь, это поможет.
Ответ 5
Для тех, кто приходит через эти годы позже:
TL; DR проверить версию вашего протокола (2 против 3)
У меня была эта же проблема, и она не была исправлена, запустив pip install simplejson
, несмотря на то, что pip настаивал на ее установке. Затем я понял, что у меня установлены оба python 2 и python 3.
> python -V
Python 2.7.12
> pip -V
pip 9.0.1 from /usr/local/lib/python3.5/site-packages (python 3.5)
Установка с помощью правильной версии пипа так же проста, как с помощью pip2
:
> pip2 install simplejson
а затем python 2 может import simplejson
fine.