Python将JSON文件保存为UTF-8

时间:2013-04-30 02:39:07

标签: python json utf-8 utf8-decode

我正在尝试将一些UTF-8字符输出到JSON文件。

当我保存文件时,他们就像这样写:

{“some_key”:“Enviar invitaci \ u00f3n privada”}

以上内容有效且有效。当我加载文件并打印'some_key'时,它会在终端显示“Enviartinvitaciónprivada”。

是否有编写带有“some_key”作为编码版本的JSON文件,如下所示?

{“some_key”:“Enviartinvitaciónprivada”}

2 个答案:

答案 0 :(得分:12)

ensure_ascii设为False

>>> print json.dumps(x, ensure_ascii=False)
{"some_key": "Enviar invitación privada"}

答案 1 :(得分:6)

在此处使用Python 3.4.3并使用dump()代替dumps()

    with open("example.json","w", encoding='utf-8') as jsonfile:
        json.dump(data,jsonfile,ensure_ascii=False)

是将JSON写入UTF-8编码文件的标准方法。

如果您想要转义的代码点而不是文件中的字符,请设置ensure_ascii=True。 这会将欧元字符直接写为\u20ac直接写入您的文件。