文章目录
一、JSON文件简介
在自动化测试过程中,会将部分数据保存到JSON文件中。
JSON文件有以下特点:
- JSON是存储和交换文本信息的语法,类似XML。
- JSON比XML更小、更快、更易解析 JSON是轻量级的文本数据交换格式。
- JSON是轻量级的文本数据交换格式。
- JSON独立于语言
- JSON具有自我描述性、更易理解。
JSON的语法规划如下:
- JSON数据用大括号括起来。
- 数据在“名称/值”对中,名称和值用冒号分隔,类似Python中的字典。
- 名称必须用双引号括起来,值是否需要双引号引起来要视值的类型而定。
- 数据由逗号分隔。
JSON数据示例:{“name”:“storm”,:age":30}
JSON模块提供了四个功能:
- dumps-将字典转换为字符串。
- dump - 将字典转换为字符串,并写入JSON文件中。
- loads-将字符串转换为字典。
- load - 将字典转换为数据类型。
二、借助Python处理JSON文件
1、读取字典类型的JSON文件
首先创建名为“login_account.json"的文件,用来保存某个系统的登陆账号信息,内容如下:
{ "user1":{"name":"tom","password":"12345"}, "user2":{"name":"jon","password":"123456"}}
然后通过脚本读取该文件内容:
import jsonfile = "login_account.json"with open(file,'r') as f: users = json.load(f)for user in users: name = users[user]['name'] password = users[user]['password'] print(name,password)
运行结果如下:
2、读取列表类型的JSON文件
首先创建名为“myarray.json"的文件,用来保存某个系统的登陆账号信息,内容如下:
[ { "name":"tom", "age":30 }, { "name":"jon", "age":22 }]
然后通过脚本读取该文件内容:
import jsonfile = "myarray.json"with open(file,'r') as f: ss = json.load(f)for s in ss: print(s) print(s["name"]) print(s["age"])
运行结果如下:
3、封装读取JSON文件的函数
为了简化操作,封装读取JSON文件的函数,支持解析两层的JSON文件:
import jsondef parse_json(file,key1,key2): mylist=[] with open(file,'r',encoding='utf8') as f: data= json.load(f) for i in data: mylist.append((data[i][key1],data[i][key2])) return mylistif __name__ == '__main__': account_info = parse_json('login_account.json','name','password') print(account_info)
运行结果如下:
来源地址:https://blog.csdn.net/jylsrnzb/article/details/131458092