python - 无法输出包含重音符号的 json 编码字典(里面是 noob)

标签 python json utf-8

这是一个相当简单的例子,几天来它让我抓狂。考虑以下脚本:

# -*- coding: utf-8 -*
from json import dumps as json_dumps

machaine = u"une personne émérite"
print(machaine)

output = {}
output[1] = machaine
jsonoutput = json_dumps(output)
print(jsonoutput)

cli 的结果:

une personne émérite
{"1": "une personne \u00e9m\u00e9rite"}

我不明白为什么两个字符串之间有如此大的差异。 我一直在尝试各种编码、解码等,但我似乎无法找到正确的方法。有人有想法吗?

提前致谢。 马蒂厄

最佳答案

编码正确。将其重新加载并打印,您将看到正确的输出:

>>> import json
>>> jsoninput = json.loads(jsonoutput)
>>> print jsoninput
{u'1': u'une personne \xe9m\xe9rite'}
>>> print jsoninput['1']
une personne émérite

关于python - 无法输出包含重音符号的 json 编码字典(里面是 noob),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2750156/

相关文章:

json - 如何使用 mongodb_fdw 将动态 JSON 对象绑定(bind)到 PostgreSQL?

javascript - 如何使用ajax从另一个页面获取div内容

python - 从文本文件读取时的 Unicode 编码

java - 推送网络服务 : Invalid UTF-8 start byte

php - 准备 PHP 应用程序以使用 UTF-8

python - 异常处理程序可以在异常引发时访问全局变量和局部变量吗?

python - 从 MySQL 迁移到 Postgres 后了解 "SEPARATOR"处或附近的语法错误

python - plotnine - 在同一个图中有两个图并打印它的任何解决方法

python - py.test 运行 Python2 和 Python3

javax.json - 使用数组列表和一个单独的属性构建 JsonObject