simplejson をインポートするプログラムを実行しようとしています。Python 2.7 で実行すると問題ありませんが、Python 3.3 で実行すると次のように表示されます。
ファイル "C:\Python33\lib\simplejson__init__.py"、111 行
目、デコーダーからの <module> インポート JSONDecoder、JSONDecodeError
ImportError: No module named 'decoder'
simplejson をインポートするプログラムを実行しようとしています。Python 2.7 で実行すると問題ありませんが、Python 3.3 で実行すると次のように表示されます。
ファイル "C:\Python33\lib\simplejson__init__.py"、111 行
目、デコーダーからの <module> インポート JSONDecoder、JSONDecodeError
ImportError: No module named 'decoder'
外部simplejsonライブラリを使用する必要はありません。Python 3標準ライブラリに含まれているモジュールjsonはまったく同じモジュールですが、Pythonディストリビューションの一部として維持されています。simplejsonPyPIページからの引用:
simplejsonjsonは、 Python2.6およびPython3.0に含まれているライブラリの外部で保守されている開発バージョンですが、 Python2.5との下位互換性を維持しています。
simplejson次のコードを使用して、存在しない場合に切り替えますjson(Python 2.5の場合のみ、ライブラリは2.6以降に含まれています)。
try:
import json
except ImportError:
# python 2.5
import simplejson as json
正しくインストールする必要があります。つまり、easy_install simplejsonまたはを使用しpip install simplejsonます。Windowsを使用しているため、これらのコマンドラインツールはいずれもデフォルトでインストールされていません。
ただし、パッケージを適切にインストールする半自動の方法もあります。パッケージをダウンロードして一時フォルダーに解凍し、パッケージのフォルダー内のコマンドラインウィンドウを開いてpython setup.py installそこで実行します。
Pythonフォルダーに手動で抽出することは、ほとんどの場合、Pythonのインストールを台無しにする可能性のある悪い選択です(既存のファイルとの競合が発生した場合)。