Python中打印字典内Unicode为中文的两种方法
本文介绍如何在Python中将字典内的Unicode编码字符转换为中文显示。主要方法包括使用json.dumps配合decode('unicode-escape'),以及通过ord()函数获取字符编码并以16进制格式打印。同时涵盖从UTF-8或GBK文件读取字符串并转换为Unicode字符串的操作。
Python将字典内Unicode转换为中文显示的方法
直接查看以下代码实现即可。
使用json.dumps处理Unicode编码
import json
a = {u'content': {u'address_detail': {u'province': u'\u5409\u6797\u7701', u'city': u'\u957f\u6625\u5e02', u'street_number': u'', u'district': u'', u'street': u'', u'city_code': 53}, u'point': {u'y': u'43.89833761', u'x': u'125.31364243'}, u'address': u'\u5409\u6797\u7701\u957f\u6625\u5e02'}, u'status': 0, u'address': u'CN|\u5409\u6797|\u957f\u6625|None|CERNET|0|0'}
print json.dumps(a).decode('unicode-escape')
最终输出结果如下:
{"content": {"address_detail": {"province": "吉林省", "city": "长春市", "street_number": "", "district": "", "street": "", "city_code": 53}, "address": "吉林省长春市", "point": {"y": "43.89833761", "x": "125.31364243"}}, "status": 0, "address": "CN|吉林|长春|None|CERNET|0|0"}
获取并打印单个字符的Unicode编码
补充知识:在Python代码中如何输出单个字符的Unicode编码值。
假设变量ch代表一个Unicode字符,可通过以下方式处理:
print '\u%04x' % ord(ch)
其中ord(ch)返回该字符Unicode编码的十进制数值,将其格式化为16进制即可符合Unicode标准表示法。
具体示例如下:
上述示例成功打印了“你”、“好”以及字母“a”这三个字符对应的Unicode编码值。
Unicode字符即Unicode字符串中的单个字符。对于字符串常量,若以字母u作为前缀,则表明其为Unicode字符串。
若从UTF-8编码的文本文件中读取一行str类型数据,需通过decode方法转换为Unicode字符串:
line = myfile.readline() uniline = line.decode('utf-8')
此时uniline即为Unicode字符串。若源文件为GBK编码格式,则需使用gbk编码进行decode操作。
以上关于Python将字典中Unicode打印为中文的内容分享完毕,希望能为读者提供参考,并欢迎大家继续支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









