python接口自动化学习笔记(封装方法用于读取json文件)
程序员文章站
2022-07-14 09:37:32
...
本篇实现对读取json的代码进行简单的封装
首先创建一个json文件用以测试使用
{
"json1":{"key1":"value1"},
"json2":{"key2":"value2"}
}
1.直接读取json1的值
import json
#创建句柄,读取json文件
fp = open("file_path/xxx.json")
#获取json文件数据
data = json.load(fp)
#打印json1的value
print data["json1"]
打印结果如下:
2.封装获取json文件的方法
此方法需要实现的作用是:其他方法再调用此方法时,如果传入file_name,就调用对应路径的json文件。如果不传这个字段,就调用默认json文件。
def __init__(self,file_name=None):
if file_name:
self.file_name = file_name
else:
self.file_name = 'file_path/xxx.json'
self.data = self.read_data()
def read_data(self):
with open(self.file_name) as fp:
data = json.load(fp)
return data
3.封装获取value的方法
通过传key值获取对应的value值
def get_data(self,key):
return self.data[key]
到这里就封装完了,可以执行测试一下,还是打印json1的value值
if __name__ == '__main__':
opJson = OperationJson()
print(opJson.get_data('json1'))
打印结果如下:
完整代码如下:
#coding:utf-8
import json
class OperationJson:
def __init__(self,file_name=None):
if file_name:
self.file_name = file_name
else:
self.file_name = 'file_path/xxx.json'
self.data = self.read_data()
def read_data(self):
with open(self.file_name) as fp:
data = json.load(fp)
return data
#根据关键字获取数据
def get_data(self,key):
return self.data[key]
if __name__ == '__main__':
opJson = OperationJson()
print(opJson.get_data('json1'))
有疑问的小伙伴可以在下方留言,我会针对问题不断优化文章内容,希望能有效的帮到更多人,谢谢~
上一篇: tslib移植到arm平台
下一篇: Java面试必问之--单例模式(懒汉式)