我院新闻
Python之json常见四种用法
发布时间:2024-01-20

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,通常用于在客户端和服务器之间传递数据。在 Python 中,我们可以使用内置的 json 模块来处理 JSON 数据。json 模块提供了四个主要的函数来读取和写入 JSON 数据:json.load(),json.loads(),json.dump(),json.dumps()

  • 对数据进行编码:json.dumps(),json.dump()
  • 对数据进行解码:json.loads(),json.load()
  • 对文件进行编码:json.load(),json.dump()
  • 对字符串进行解码:json.loads(),json.dumps()

1.json.load()

文件中读取JSON 数据并将其解析为 Python 对象。它需要一个文件对象作为参数。示例代码:

import json

# 使用 json.load() 从文件中读取 JSON 数据
with open('data.json', 'r') as f:
data = json.load(f)

2.json.loads()

字符串中JSON 数据读取并将其解析为 Python 对象。它需要一个字符串作为参数。示例代码:

import json
# 使用 json.loads() 从字符串中读取 JSON 数据
json_str = '{"name": "Kyrie", "age": 31}'
data = json.loads(json_str)

3.json.dump()

将 Python 对象编码为 JSON 格式并写入文件。它需要一个 Python 对象和一个文件对象作为参数。示例代码:

import json

data = {"name": "Kyrie", "age": 31}
with open('data.json', 'w') as f:
    json.dump(data, f)
```

4.json.dumps()

将 Python 对象编码为 JSON 格式并返回字符串。它需要一个 Python 对象作为参数。示例代码:

import json
# Python 字典类型转换为 JSON 对象
data = {
    'no' : 1,
    'name' : 'Bilibili',
    'url' : 'https://www.bilibili.com/'
}
 
json_str = json.dumps(data)
print ("Python 原始数据:", repr(data))
print ("JSON 对象:", json_str)

#->简单类型通过编码后跟其原始的repr()输出结果非常相似。
#repr() 函数描述
#repr() 函数将对象转化为供解释器读取的形式。
#返回值:返回一个对象的 string 格式。

需要注意的是,当使用 json.load() 和 json.loads() 读取 JSON 数据时,它们会将 JSON 对象解析为 Python 字典。同样地,当使用 json.dump() 和 json.dumps() 写入 JSON 数据时,它们会将 Python 字典编码为 JSON 对象。如果要将其他类型的 Python 对象(如列表、元组、集合等)编码为 JSON 对象,需要使用 default 参数或自定义编码器。

详细学习见:Python3 JSON 数据解析 | 菜鸟教程 (runoob.com)

[返回上级]