我正在尝试运行一个导入 simplejson 的程序。当我在 Python 2.7 中运行它时没问题,但是当我在 Python 3.3 中运行它时,它说:
文件“C:\Python33\lib\simplejson__init__.py”,第 111 行,在 <module>
中从解码器导入 JSONDecoder,JSONDecodeError
ImportError:没有名为“解码器”的模块
我正在尝试运行一个导入 simplejson 的程序。当我在 Python 2.7 中运行它时没问题,但是当我在 Python 3.3 中运行它时,它说:
文件“C:\Python33\lib\simplejson__init__.py”,第 111 行,在 <module>
中从解码器导入 JSONDecoder,JSONDecodeError
ImportError:没有名为“解码器”的模块
无需使用外部simplejson
库。Python 3 标准库中包含的模块json
是完全相同的模块,但作为 Python 发行版的一部分进行维护。从simplejson
PyPI 页面引用:
simplejson
json
是Python 2.6 和 Python 3.0 中包含的库的外部维护开发版本,但保持与 Python 2.5 的向后兼容性。
使用以下代码切换到simplejson
if json
is not present(仅适用于 Python 2.5,该库包含在 2.6 及更高版本中):
try:
import json
except ImportError:
# python 2.5
import simplejson as json
您需要正确安装它。这意味着使用easy_install simplejson
or pip install simplejson
。由于您使用的是 Windows,因此默认情况下不会安装这些命令行工具。
但是,也有一种半自动的方式正确安装包:下载并解压到某个临时文件夹,然后在包的文件夹中打开命令行窗口并python setup.py install
在其中执行。
手动将其解压到您的 Python 文件夹几乎总是一个糟糕的选择,这可能会弄乱您的 Python 安装(以防与现有文件发生任何冲突)。