Python中JSON数据处理的完整指南
目录
- jsON 是什么
- python 自带神器:json模块
- JSON → Python(反序列化)
- Python → JSON(序列化)
- 优雅打印 JSON
- 从文件读取 JSON
- 把 JSON 写进文件
- JSON ↔ Python 类型对照表
- 异常处理
- 实战:抓取在线 API 数据
- 今日总结
JSON 是什么
JSON(JavaScript Object Notation)是一种轻量编程客栈级数据格式,长得像 Python 的字典和列表:
{ "name": "Alice", "age": 30, "skills"python: ["Python", "Data Science"] }
Pytho编程客栈n 自带神器:json模块
import json
JSON → Python(反序列化)
用 json.loads()
把 JSON 字符串变成字典:
import json json_str = '{"name": "Alice", "age": 30, "skills": ["Python", "Data Science"]}编程客栈' data = json.loads(json_str) print(data["name"]) # Alice print(type(data)) # <class 'dict'>
Python → JSON(序列化)
用 json.dumps()
把 Python 对象变 JSON 字符串:
person = { "name": "Bob", "age": 25, "skills": ["javascript", "React"] } json_data = json.dumps(person) print(json_data)
优雅打印 JSON
加 indent
一键格式化:
print(json.dumps(person, indent=2))
从文件读取 JSON
with open('data.json', 'r') as file: data = json.load(file) print(data["name"]javascript)
把 JSON 写进文件
with open('output.json', 'w') as file: json.dump(person, file, indent=4)
JSON ↔ Python 类型对照表
JSON | Python |
---|---|
Object | dict |
Array | list |
String | str |
Number | int/float |
true/false | True/False |
null | None |
异常处理
解析失败时用 try-except
捕获:
try: data = json.loads('{"name": "Alice", "age": }') # 非法 JSON except json.JSONDecodeError as e: print("解析出错:", e)
实战:抓取在线 API 数据
import requests import json response = requests.get("https://jsonplaceholder.typicode.com/users") users = response.json() for user in users: print(user['name'], '-', user['email'])
今日总结
任务 | 函数 |
---|---|
JSON → Python | json.loads() |
Python → JSON | json.dumps() |
读文件 | json.load() |
写文件 | json.dump() |
到此这篇关于Python中JSON数据处理的完整指南的文章就介绍到这了,更多相关Python JSON数据处理内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!
精彩评论