【发布时间】:2015-01-22 08:55:14
【问题描述】:
我有一个使用 repr 函数保存到文件中的 JSON 对象:
f = open('file', 'w')
f.write(repr(my_json))
f.close()
编码后的 JSON 现在有前导“u”字符,表示 unicode 编码。
{u'messages': 'messages'}
这是 Python 2.x 的预期行为,但现在我试图弄清楚如何解码存储在该文件中的字符串。我尝试过的一切都给了我同样的错误:
ValueError: Expecting property name: line 1 column 2 (char 1)
帮助?
【问题讨论】:
-
你为什么不用
json.dumps写它们? -
不是我写的。我只是试图解码它。
-
@kid_drew 我认为 Rafael 是说你不应该在开头使用 f.write(repr(my_json)) 将其写入文件。您应该改用 json.dump。
-
即使在
f.write之后阅读也没有任何问题,您使用的是哪个 python 版本? -
@skyline75489 - 我明白了,而且我已经知道如何使用 json.dumps。我的问题不是关于 json.dumps,而是关于如何撤消现有的错误。数据无法重新生成。