写点什么

软件测试 / 测试开发丨 Python 内置库 json

作者:测试人
  • 2023-08-08
    北京
  • 本文字数:772 字

    阅读完需:约 3 分钟

免费领取:测试资料+性能测试+测试用例+简历模板

本文为霍格沃兹测试开发学社学员学习笔记分享

原文链接:https://ceshiren.com/t/topic/26326

JSON

  • JSON 是用于存储和交换数据的语法,是一种轻量级的数据交换格式。

  • 使用场景接口数据传输序列化配置文件

JSON 结构

  • 键值对形式

  • 数组形式

{    "language": [        {            "name": "python",            "url": "https://www.python.org/"        },        {            "name": "java",            "url": "https://www.java.com/zh-CN/"        }    ]}
复制代码

Python 与 JSON 数据类型对应


json 库

  • 可以从字符串或文件中解析 JSON

  • 该库解析 JSON 后将其转为 Python 字典或者列表

常用方法

  • dumps():将 Python 对象编码成 JSON 字符串

  • loads():解码 JSON 数据,该函数返回 Python 对象

  • dump(): Python 对象编码,并将数据写入 json 文件中

  • load():从 json 文件中读取数据并解码为 Python 对象

import json
# 定义 python 结构data = [{'a': 1, 'b': '2', 'c': True, 'd': False, 'e': None }]
# 将 python 对象编码为 JSON 字符串json_data = json.dumps(data)# 将 JSON 字符串解码为 python 对象python_data = json.loads(json_data)# 写入 JSON 数据,在代码当前目录生成一个 data.json 的文件with open('data.json', 'w') as f: json.dump(data, f) # 读取数据,读取 json 文件并解码成 python 对象with open('data.json', 'r') as f: data = json.load(f)
复制代码

dumps 常用参数

  • indent:根据数据格式缩进显示,默认为 None,没有缩进

  • ensure_ascii:对中文使用 ASCII 编码,默认为 True

import json
data = { 'a': 1, 'b': '霍格沃兹', 'c': True, 'd': False, 'e': None }
python_data = json.dumps(data, indent=4, ensure_ascii=False)print(python_data)
复制代码


发布于: 刚刚阅读数: 5
用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试/测试开发丨Python 内置库 json_Python_测试人_InfoQ写作社区