【发布时间】:2014-11-11 16:40:07
【问题描述】:
如何打印带有“à”或“ç”等特殊字符的 json?
我可以这样打印:
import json
weird_dict ={"person": "ç", "á": 'à', "ç": 'ã'}
print json.dumps(weird_dict, indent=4, sort_keys=True)
output:
{
"person": "\u00e7",
"\u00e1": "\u00e0",
"\u00e7": "\u00e3"
}
如果我使用 'ensure_ascii=False'
weird_dict={"person": "ç", "á": 'à', "ç": 'ã'}
print json.dumps(weird_dict, indent=4, sort_keys=True, ensure_ascii=False)
output:
{
"person": "ç",
"á": "à ",
"ç": "ã"
}
如何使用 json 解决特殊字符问题?当我使用 pystache 并尝试打印时,我需要进行渲染
"'ascii' codec can't decode byte 0xc3 in position 4770: ordinal not in range(128)"
【问题讨论】:
-
哪个版本的 Python?那些是 Unicode 字符串吗?
-
weird_json不是 JSON,而是 Python 字典。 -
@Joe:输出是 JSON。
-
@MartijnPieters 对不起。我声称午后失明。
-
@Joe:当然;我认为 OP 只是试图说明输出。