【功能点】python中Json与字符串相互转化与文件读取保存

一些Json处理小技巧–python3.9

一、文件处理

json.load():把txt文本json数据读取到python

在这里插入图片描述

import json
import pandas as pd
def txt2Json():

    # 打开文本文件
    fp = open("125-1.txt", 'r', encoding="utf-8")
    a = json.load(fp)
    fp.close()
    return a

json.dump() :把字典数据写入json文件中

import json
result_Json = {'ret':'123', 'id':'12'}
with open('list.json', 'w+') as file:
	json.dump(student, file)	

json.dumps() :把字典数据转为json格式字符串

import json
result_Json = {'ret':'123', 'id':'12'}
with open('list.json', 'w+') as file:
	json.dump(student, file)	
result_Json = json.loads(result_text)  #将json格式的字符串转化成有结构的json,为dict
result_Json_str = json.dumps(result_Json) #将dict又转为字符串

结果:
在这里插入图片描述

二、字符串处理

原数据:
在这里插入图片描述

json.dumps() : json序列化为字符串

result_Json = json.loads(result_text)
在这里插入图片描述
结果:python里面还是str
在这里插入图片描述

json.loads():把字符串格式的变量转成json数据

result_Json = json.loads(result_text)  #将json格式的字符串转化成有结构的json,为dict

三、python读取json格式内容

json结构:
{
	"data": {
		"ret": [{
			"probability": {
				"average": 0.9991600513,
				"min": 0.992226243,
				"variance": 0.000004124859061
			}],
		"templateSign": "3291ec70a7914fb05096eddb5c30d1d7",
		"templateName": "双栏版"
	}
}
templateName = result_Json['data']['templateName']

result_data = result_Json['data']['ret']

四、根据json中key值得到对应value值

def get_json_value(json_data,key_name):
    '''获取到json中任意key的值,结果为list格式'''
    key_value = jsonpath.jsonpath(json_data, '$..{key_name}'.format(key_name=key_name))
    #key的值不为空字符串或者为empty(用例中空固定写为empty)返回对应值,否则返回empty
   
    return key_value

使用:

print(get_json_value(result_Json, "templateSign"))

返回:
['3291ec70a7914fb05096eddb5c30d1d7']

参考

《python处理json格式数据》@是乔乔啊
《Python获取json或字典中任意key的value值》@小哥涉世尚浅

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值