python处理json数据中的中文
程序员文章站
2022-05-02 09:02:25
...
python中自带了处理python的模块,使用时候直接import json即可。 使用loads方法即可将json字符串转换成python对象,对应关系如下:
JSON Python
object dict
array list
string unicode
number (int) int, long
number (real) float
true True
false False
null None
JSON Python
object dict
array list
string unicode
number (int) int, long
number (real) float
true True
false False
null None
但在使用json模块的时候需要注意的是对中文的处理,loads方法如果传入的字符串的编码不是UTF-8的话,需要用encoding指定字符编码
复制代码 代码如下:
import json
import base64
f = open("./result_diff.txt")
for l in f:
try:
fp = l[l.find("?fp")+1 :]
Http = fp.find("HTTP/")
fp = fp[3:Http-1]
fp = fp.decode("gbk").encode("utf-8")
str1 = json.loads(fp, encoding="utf-8")
print str1
except Exception, e:
print str(e)
import json
import base64
f = open("./result_diff.txt")
for l in f:
try:
fp = l[l.find("?fp")+1 :]
Http = fp.find("HTTP/")
fp = fp[3:Http-1]
fp = fp.decode("gbk").encode("utf-8")
str1 = json.loads(fp, encoding="utf-8")
print str1
except Exception, e:
print str(e)
当fp中含有中文并且是gbk编码的时候,当我们把当前行的编码改成utf8后在使用json进行解码的时候需要指定编码。
或者这样
复制代码 代码如下:
fp = fp.decode("gbk")
直接转成gbk编码,就可以不用指定json的编码类型,就是不用使用encoding参数
fp = fp.decode("gbk")
直接转成gbk编码,就可以不用指定json的编码类型,就是不用使用encoding参数
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
下一篇: php 中的常量定义与使用
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论