文章目录
- 一、JSON文件简介
- 二、借助Python处理JSON文件
- 1、读取字典类型的JSON文件
- 2、读取列表类型的JSON文件
- 3、封装读取JSON文件的函数
一、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)
运行结果如下: