本文共 3081 字,大约阅读时间需要 10 分钟。
在Python中,JSON文件的读取和处理是非常常见的操作。以下是读取JSON文件的基本方法和示例。
在读取JSON文件之前,需要确保文件路径正确并使用合适的编码格式。以下是一个简单的读取示例:
import json# 打开文件,读取并解析JSON内容with open("data.json", 'r', encoding='utf-8') as file: data = json.load(file) 以下是读取JSON文件的具体示例:
{ "name": "data.json", "content": { "programmers": [ { "firstName": "Brett", "lastName": "McLaughlin", "email": "aaaa" }, { "firstName": "Jason", "lastName": "Hunter", "email": "bbbb" }, { "firstName": "Elliotte", "LastName": "Harold", "email": "cccc" } ], "authors": [ { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" }, { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }, { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" } ] }} # 假设文件路径正确,以下代码会输出对应的数据data = { "programmers": [ { "firstName": "Brett", "lastName": "McLaughlin", "email": "aaaa" }, { "firstName": "Jason", "lastName": "Hunter", "email": "bbbb" }, { "firstName": "Elliotte", "lastName": "Harold", "email": "cccc" } ], "authors": [ { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" }, { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }, { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" } ]}print(data["programmers"][0]) # 输出第一个程序员的信息print(data["programmers"][0]["firstName"]) # 输出程序员的名字print(data["authors"][1]["lastName"]) # 输出作者的姓氏 将数据保存为JSON文件需要使用json.dump()函数。以下是一个简单的保存示例:
import json# 创建一个字典数据data = { "name": "Golden Gate Bridge", "type": "桥梁", "description": "这是一座连接美国加利福尼亚州旧金山的桥梁"}# 打开文件进行写入with open("bridge.json", 'w', encoding='utf-8') as file: json.dump(data, file, ensure_ascii=False) 保存文件后,可以通过json.load()函数读取文件内容:
import json# 打开并读取文件with open("bridge.json", 'r', encoding='utf-8') as file: data = json.load(file)# 输出读取结果print(data) dump,dumps,load,loads的区分json.dumps():将Python数据类型(如字典)转换为JSON格式的字符串。json.loads():将JSON格式的字符串转换为Python数据类型(如字典)。json.dumps()示例import json# 创建一个字典user = { "name": "张三", "age": "30", "email": "zhangsan@example.com"}# 将字典转换为JSON字符串json_str = json.dumps(user)print(type(json_str)) # 输出: print(json_str) # 输出:{"name": "张三", "age": "30", "email": "zhangsan@example.com"} json.loads()示例import json# 读取一个JSON字符串json_str = '{"name": "张三", "age": "30", "email": "zhangsan@example.com"}'# 将字符串转换为字典user = json.loads(json_str)print(type(user)) # 输出: print(user) # 输出:{'name': '张三', 'age': '30', 'email': 'zhangsan@example.com'} json.dump()示例import json# 创建一个字典user = { "name": "张三", "age": "30", "email": "zhangsan@example.com"}# 将字典写入文件with open("user.json", 'w', encoding='utf-8') as file: json.dump(user, file) json.load()示例import json# 读取JSON文件with open("user.json", 'r', encoding='utf-8') as file: user = json.load(file)# 输出用户信息print(user) 以上是对JSON文件读取和保存的详细说明,希望这些内容对您有所帮助!
转载地址:http://lsofk.baihongyu.com/