求助python json的编码问题
import json
s = '{"Name":"中文"}'
obj = json.loads(s, 'gbk')
print(obj)
输出
{'Name': u'\u4e2d\u6587'}
请问大家 怎么才能让此处输出
{'Name':'中文'}
呢
非常感谢
[最优解释]
不可以,得自己写个格式化输出
[其他解释]
这个和json没关系。你自己试下print {"Name": "中文"}输出是什么。你打出来的东西只是Python对象的一个原始的内部表示,对你写的应用的最终用户通常是不可见的,你也不必可以在乎它打出来的是什么样子。
[其他解释]
恩 了解了 不过自带的json好像会转换成unicode编码 然后换用了 python-json 不过据说这个会有效率问题 目前先这样用算了
[其他解释]
啥时候还要回复才能看了啊
[其他解释]
python输出json时中文处理问题
分类: python 2012-07-25 22:19 162人阅读 评论(0) 收藏 举报
(转贴,非原创)json.dumps在默认情况下,对于非ascii字符生成的是相对应的字符编码,而非原始字符,例如:
>>> import json
>>> js = json.loads('{"haha": "哈哈"}')
>>> print json.dumps(js)
{"haha": "\u54c8\u54c8"}
解决办法很简单:
>>> print json.dumps(js, ensure_ascii=False)
{"haha": "哈哈"}
分享到: