一、JSON介绍
JSON是一种轻量级的数据交换格式,其采用键值对的方式存储数据。JSON以字符串(String)的形式进行数据传输,因为在所有的编程语言中,字符串都是易于处理的。JSON的格式非常简洁,使用易于人阅读的文本,易于理解和编写,而且能够很容易地解析和生成。例如,一个JSON对象可以描述一个人的基本信息,如姓名、性别、年龄等。
二、Python解析JSON
Python有两个模块可以解析JSON数据:json和simplejson。json模块是Python 2.6之后自带的解析JSON数据的模块,simplejson则是第三方模块,但是简单易用,速度快。
import json
# 解析JSON字符串
json_str = '{"name": "Tom", "age": 20}'
json_obj = json.loads(json_str)
print(json_obj["name"]) # 输出 Tom
# 生成JSON字符串
json_dict = {'name': 'Tom', 'age': 20}
json_str2 = json.dumps(json_dict)
print(json_str2) # 输出{"name": "Tom", "age": 20}
三、读取JSON文件
Python可以读取JSON文件并将其解析为Python对象。这对于配置文件和数据存储非常有用。使用Python自带的json模块,我们可以轻松地读取JSON文件。
import json
# 从文件中读取JSON数据
with open("data.json", "r") as f:
json_data = json.load(f)
print(json_data["name"]) # 输出"Tom"
四、写入JSON文件
与读取JSON文件一样,Python也可以将Python对象写入JSON文件。同样,使用Python自带的json模块,我们可以轻松地将Python对象序列化为JSON格式。
import json
# 将对象写入JSON文件
data = {"name": "Tom", "age": 20}
with open("output.json", "w", encoding='utf-8') as f:
json.dump(data, f, ensure_ascii=False, indent=4)
五、结论
本文介绍了Python解析JSON的基本方法,包括解析JSON字符串、读取JSON文件、写入JSON文件。这些方法可以让开发人员在编写代码的过程中,更加高效地处理和存储JSON数据,并且提高了开发效率。