4

我有一个烦人的问题,这些天让我很难过......我想开发一些网络服务供我自己使用,目前我正在与我该死的法语口音作斗争,以便在我的 json 输出中正确呈现。

这是我的场景:我从我的数据库中检索了一些我放入字典的行。我接下来要做的是将此 dict 传递给 json.dumps 并输出结果。

问题是:包含重音的字符串被呈现为 utf8,例如它给了我以下输出 \u00e9milie(它应该是 émilie)。令人沮丧的是,如果我打印每个返回的行,重音将在我的浏览器中正确呈现。

问题:

  • 给出这种 json 输出是否正常?
  • 如何“简单”地将包含重音的 dict 转换为 json ?(这对我来说很重要,因为其他网站可以使用我的输出)

这是我正在运行的测试。

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

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

output = {}
output[1] = machaine
output[2] = machaine
output[3] = machaine

jsonoutput = json_dumps(output)

print jsonoutput
4

1 回答 1

5

就像文档说的那样,ensure_ascii=False手动传递和编码。

于 2010-05-03T09:56:35.910 回答