什么是JSON数据
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于网页和服务器之间的数据传输。你可能在调用API、处理配置文件或从后台获取信息时遇到它。它的结构清晰,看起来有点像Python字典或JavaScript对象。
用Python读取JSON文件
如果你正在写脚本处理本地的JSON文件,比如用户设置、日志数据或者爬虫抓回来的内容,Python的json模块非常方便。
import json
# 读取本地JSON文件
with open('data.json', 'r', encoding='utf-8') as f:
data = json.load(f)
print(data['name']) # 输出键为name的值
假设你下载了一份天气接口返回的JSON保存为weather.json,就可以用上面的方式读出来,提取温度、城市名这些信息。
处理网络请求返回的JSON数据
很多网站API返回的都是JSON格式。比如你在做个小工具,想显示最近的汇率,可以直接请求接口并解析结果。
import requests
response = requests.get('https://api.example.com/rate')
data = response.json() # 自动解析JSON
print(data['usd'])
注意要先安装requests库:pip install requests。这种方式适合对接各种公开接口,比如新闻、股票、快递查询等。
在JavaScript中读取JSON
前端开发中经常需要处理JSON。如果是字符串形式的JSON,可以用JSON.parse()转成对象。
const jsonString = '{"name": "小明", "age": 25}';
const obj = JSON.parse(jsonString);
console.log(obj.name); // 输出:小明
如果数据来自服务器,fetch API也能直接处理:
fetch('/api/user')
.then(response => response.json())
.then(data => console.log(data));
手动查看JSON文件的小技巧
有时候你拿到一个.json文件,想快速看看里面有什么。可以用记事本打开,但格式乱糟糟的。推荐用浏览器打开——把文件拖进Chrome标签页,它会自动格式化展示。也可以用VS Code这类编辑器,装个JSON高亮插件,读起来更清楚。
常见问题注意点
读取JSON时容易出错的地方不少。比如文件编码不是UTF-8,会导致解码失败;或者网络返回的其实是HTML错误页,却当成JSON解析,程序就会崩溃。建议加上异常处理:
try:
data = json.load(f)
except json.JSONDecodeError as e:
print(f'JSON格式错误:{e}')
另外,嵌套太深的JSON别硬啃,可以用print分层输出,或者用工具如jq(命令行)来过滤提取你需要的部分。