python如何封装json格式字符串并处理单双引号问题
发表于:2025-11-20 作者:千家信息网编辑
千家信息网最后更新 2025年11月20日,这篇文章主要介绍了python如何封装json格式字符串并处理单双引号问题的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python如何封装json格式字符串并处理单双引
千家信息网最后更新 2025年11月20日python如何封装json格式字符串并处理单双引号问题
这篇文章主要介绍了python如何封装json格式字符串并处理单双引号问题的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python如何封装json格式字符串并处理单双引号问题文章都会有所收获,下面我们一起来看看吧。
在使用python做web服务的时候会有数据交互的情况,大多数目前会采用json格式的数据来交互,接收者接收到标准的json格式数据后,会比较方便解析数据。
我这里有一个场景是将三个数组类型的数据封装成json格式的字符串并发送给消费方,三个数组类型的数据是:
print(boxes)print(scores)print(txts)#以下是打印结果#第一个:[array([[292., 294.], [331., 293.], [349., 848.], [309., 850.]], dtype=float32), array([[339., 299.], [378., 298.], [392., 660.], [353., 662.]], dtype=float32)]#第二个:[0.9401206, 0.8182683]#第三个:['土地整治与土壤修复研究中心', '华南农业大学丨东图']
我这样封装成str格式:
txts_str = ""for i in range(len(txts)): if (len(txts_str) == 0): txts_str = str(txts[i]) else: #因为是字符串句子,选一个不常用的符号"|"做间隔 txts_str = txts_str + "|" + str(txts[i]) txt_scores = ""for i in range(len(scores)): if(len(txt_scores) == 0): txt_scores = str(scores[i]) else: txt_scores = txt_scores + "|" + str(scores[i]) txt_boxes = ""for i in range(len(boxes)): for j in range(len(boxes[i])): for k in range(len(boxes[i][j])): if (len(txt_boxes) == 0): txt_boxes = str(boxes[i][j][k]) else: txt_boxes = txt_boxes + "," + str(boxes[i][j][k]) #打印一下print(txt_boxes)print(txts_str)print(txt_scores) #打印结果:#292.0,294.0,331.0,293.0,349.0,848.0,309.0,850.0,339.0,299.0,378.0,298.0,392.0,660.0,353.0,662.0#土地整治与土壤修复研究中心|华南农业大学丨东图#0.9401206|0.8182683
封装成json:
#然后封装成json:result_data = {"txt_boxes": txt_boxes, "txts": txts, "txt_scores": txt_scores}发现是单引号的格式,并不是标准json:
#{'txt_boxes': '292.0,294.0,331.0,293.0,349.0,848.0,309.0,850.0,339.0,299.0,378.0,298.0,392.0,660.0,353.0,662.0', 'txts': ['土地整治与土壤修复研究中心', '华南农业大学丨东图'], 'txt_scores': '0.9401206|0.8182683'}这样将单引号转为双引号
json.dumps(result_data)
发现json.dumps后中文格式不对了:
#{"txt_boxes": "292.0,294.0,331.0,293.0,349.0,848.0,309.0,850.0,339.0,299.0,378.0,298.0,392.0,660.0,353.0,662.0", "txts": "\u571f\u5730\u6574\u6cbb\u4e0e\u571f\u58e4\u4fee\u590d\u7814\u7a76\u4e2d\u5fc3|\u534e\u5357\u519c\u4e1a\u5927\u5b66\u4e28\u4e1c\u56fe", "txt_scores": "0.9401206|0.8182683"}这是因为json.dumps 序列化时默认使用的ascii编码,想输出真正的中文需要指定ensure_ascii=False:
json.dumps(result_data,ensure_ascii=False)
结果是我们要的标准json格式了:
#{"txt_boxes": "292.0,294.0,331.0,293.0,349.0,848.0,309.0,850.0,339.0,299.0,378.0,298.0,392.0,660.0,353.0,662.0", "txts": ["土地整治与土壤修复研究中心|华南农业大学丨东图"], "txt_scores": "0.9401206|0.8182683"}关于"python如何封装json格式字符串并处理单双引号问题"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"python如何封装json格式字符串并处理单双引号问题"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
格式
封装
引号
字符
字符串
数据
问题
处理
农业
土地
土壤
大学
研究中心
华南
华南农业大学
研究
三个
标准
知识
结果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网站数据库md5
吉林世纪风互联网科技有限
埃森哲 金融 网络安全
国内数据库产品
文明与征服主播都在玩的服务器
网络安全需要用到哪些书
上海电力应急软件开发服务
网络安全是未来的第一生产力
sql数据库编码格式
openfoam软件开发
云服务器卡是因为什么
桂林超卓网络技术有限公司
一个软件开发人员的构成
望奎软件开发者在线咨询
网络安全漫画五年级
软件开发审核思路
可使用数据库的副本恢复数据
sptarkov服务器
上海特定网络技术转让操作
网络技术未来应用
华为网络安全学习技术指南
计算机数据库原来理视频
在线调查运用的先进网络技术
奇迹单机服务器
网络服务器在生活的应用
gdb数据库坐标文件是哪个
网络安全保卫管辖
滁州节能软件开发业务
春秋各类网络技术教程
svn 服务器端