1. json模块概述

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于前后端数据交互。Python中的json模块提供了与JSON数据的编码和解码功能,可以将Python对象转换为JSON格式,也可以将JSON格式转换为Python对象。

要使用json模块,可以使用以下语句导入:

import json

2. JSON编码

将Python对象转换为JSON格式的字符串可以使用json.dumps()函数。该函数接受一个Python对象作为输入,并返回一个对应的JSON格式的字符串。

以下是一个将Python字典对象编码为JSON字符串的示例:

import json

person = {
    'name': 'Alice',
    'age': 25,
    'city': 'New York'
}

json_string = json.dumps(person)
print(json_string)

代码输出结果:

{"name": "Alice", "age": 25, "city": "New York"}

3. JSON解码

将JSON格式的字符串转换为Python对象可以使用json.loads()函数。该函数接受一个JSON格式的字符串作为输入,并返回对应的Python对象。

以下是一个将JSON字符串解码为Python字典的示例:

import json

json_string = '{"name": "Alice", "age": 25, "city": "New York"}'

person = json.loads(json_string)
print(person)

代码输出结果:

{"name": "Alice", "age": 25, "city": "New York"}

4. 使用json.dump()和json.load()处理文件

json模块还提供了json.dump()和json.load()两个函数用于处理JSON文件。

json.dump()函数将Python对象转换为JSON格式,并将结果写入文件中。以下是一个示例:

import json

person = {
    'name': 'Alice',
    'age': 25,
    'city': 'New York'
}

with open('person.json', 'w') as f:
    json.dump(person, f)

json.load()函数从JSON文件中读取JSON格式的数据,并将其解码为Python对象。以下是一个示例:

import json

with open('person.json', 'r') as f:
    person = json.load(f)
    print(person)

这些函数可以方便地进行Python对象和JSON格式之间的转换,从而实现数据的序列化和反序列化。