使用python读取json数据,简单的处理成元组数组

目录

准备一个json数据

创建一个python文件

编写json里面的代码

解释

把上面的工具编写为一个简单的工具类


准备一个json数据

  1. javascript 复制代码
    [
      {
        "username": "13800138123",
        "password": "123456",
        "verify_code": "8888",
        "msg": "登陆成功",
        "test_tittle": "登录--成功登录"
      },
      {
        "username": "13800138124",
        "password": "123456",
        "verify_code": "1324",
        "msg": "验证码错误",
        "test_tittle": "登录--验证码错误"
      },
      {
        "username": "13800138125",
        "password": "123457",
        "verify_code": "8888",
        "msg": "密码错误!",
        "test_tittle": "登录--密码错误"
      },
      {
        "username": "",
        "password": "123456",
        "verify_code": "8888",
        "msg": "请填写账号或密码",
        "test_tittle": "登录--账号为空"
      },
      {
        "username": "13800138126",
        "password": "请填写账号或密码",
        "verify_code": "8888",
        "msg": "密码错误!",
        "test_tittle": "登录--密码为空"
      },
      {
        "username": "13800138127",
        "password": "Null",
        "verify_code": "8888",
        "msg": "密码错误!",
        "test_tittle": "登录--密码为Null"
      },
      {
        "username": "Null",
        "password": "123457",
        "verify_code": "8888",
        "msg": "账号不存在!",
        "test_tittle": "登录--账号为null"
      }
    ]

    对里面的json数据进行简单的说明

    1. username 是用户名

    2. password 是 用户密码

    3. verify_code 是 验证码

    4. msg 验证的消息

    5. test_tittle 是测试的标题

    6. json对象 key:value

创建一个python文件

编写json里面的代码

  1. python 复制代码
    # 导入json包
    import json
    
    # 文件路径
    josn_src  =  "login_data.json"
    # 打开json文件
    with open(josn_src, "r", encoding="utf-8") as f:
        # 使用json模块加载读取的流
        json_data = json.load(f)
        print(json_data)
        # 存储json数据列表
        json_list = []
    
        # 遍历数据 ==》 转化为元组
        for use_data in json_data:
            # 转化为元组
            json_list.append(tuple(use_data))
    
        print(json_list)
  2. 整体的思路就是通过获取json文件的io流,然后转化为 json,在通过遍历获取 key的值,转化为元组追加到json_list

解释

  1. 通过with open() as f 获取json文件流
  2. 通过json.load(f)
    1. 进行json转化
    2. 注意:这里的load() 不是loads
      1. loads会报错误
      2. 不要使用错了
  3. 通过for in 遍历数据
    1. 使用tuple()转化为元组
    2. 并且追加在json_list列表后面
  4. 运行结果如下

把上面的工具编写为一个简单的工具类

  1. 创建utils文件

  2. python 复制代码
    import json
    
    # 读取json数据
    def read_easy_json_data(json_src=""):
        # 数据转化追加存储列表
        json_list = []
    
        # 读取
        with open(json_src, 'r', encoding='utf-8') as f:
    
            # 转化为json数据
            json_data = json.load(f)
    
            # 转化为元组
            for data in json_data:
    
                json_list.append(tuple(data.values()))
    
        # 返回读取的数据
        return json_list

    把json文件的路径提取出来,然后遍历里面的结果,并且返回处理的json结果,使用这个函数的时候,把路径传进去就行了,只能简单的处理上面json类型的文件数据

  3. 测试工具类
    1.

    python 复制代码
    import utils
    
    print(utils.read_easy_json_data("login_data.json"))
    1. 结果
相关推荐
luj_17688 分钟前
一线一区一变破解人盯人防守密码
开发语言·网络·c++·经验分享·算法
名字还没想好☜28 分钟前
Python 字符编码实战:encode/decode、UnicodeDecodeError 与 open 的 encoding 坑
开发语言·后端·python·编程语言
萧瑟余晖28 分钟前
持久层选型与框架对比详解
开发语言·架构
CodeStats32 分钟前
【Java 类加载器】Java 类加载器完整体系深度拆解(上):从 JVM 启动到双亲委派模型
java·开发语言·jvm·classloader·双亲委派
带多刺的玫瑰37 分钟前
Leecode#29刷题之两数相除
java·python·算法
smj2302_7968265238 分钟前
解决leetcode第4017题数组中的峰值II
python·算法·leetcode
软件黑马王子40 分钟前
24.Editor 资源加载:主要作用和基本原理
开发语言·前端框架·c#
卷无止境43 分钟前
AI Agent编程中,重构节奏与安全检查的门道
后端·python
luj_17681 小时前
中锋卡位与开放线博弈
c语言·开发语言·网络·经验分享·算法
慧都小妮子1 小时前
用 Python 批量把 PDF 参考文献排成 MLA 格式:Spire.Doc for Python 实战
python·pdf·c#·spire.doc·mla格式·参考文献排版·pdf批量处理