欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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"]

打印结果如下:
python接口自动化学习笔记(封装方法用于读取json文件)

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'))

打印结果如下:
python接口自动化学习笔记(封装方法用于读取json文件)

完整代码如下:

#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'))

有疑问的小伙伴可以在下方留言,我会针对问题不断优化文章内容,希望能有效的帮到更多人,谢谢~

相关标签: python 读取jison