Python读取JSON文件内容的方法和示例

文章目录

  • 一、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 json
    file = "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 json
    file = "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 json
    
    def 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 mylist
    
    if __name__ == '__main__':
        account_info = parse_json('login_account.json','name','password')
        print(account_info)
    

    运行结果如下:

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python读取JSON文件内容的方法和示例

    发表评论