python之Json的注意事项

Json是一种轻量级的数据交换格式, 在跨语言交互时,是数据传递的一个比较好的选择(当然也可以选择xml).
python在构造服务json返回值时,如果碰到有中文的时候,使用json.dumps后,中文会变成另外的非人类格式,形如u'\u59d3\u540d'这样的。在python中,可以通过转码之类得知是啥

s = u'\u59d3\u540d'
print str(s.encode('gb2312'))
#姓名

但是如果接口使用方是其他的语言,那就歇菜了。
那么这个时候需要在json.dumps是做下设置,加上ensure_ascii=False和indent=2
json.dumps({"data":r},ensure_ascii=False,indent=2)

python官网文档中,列出了可用的参数

json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True,\
 allow_nan=True, cls=None, indent=None, separators=None, default=None, \
 sort_keys=False, **kw)

你可能感兴趣的:(pythonjson)