Python JSON解析错误及解决方法
学习笔记作者:admin日期:2025-06-02点击:16
摘要:总结了TypeError: the JSON object must be str, bytes or bytearray, not NoneType错误的原因及解决方案,并提供了示例代码。
JSON解析错误及解决方案
问题描述:当使用 json.loads()
解析数据时,如果传入的数据是 None
,会抛出 TypeError
错误。
错误原因
json.loads()
需要接收字符串、字节或字节数组类型的输入,而 None
不属于这些类型,因此会引发此错误。
错误示例
import json
data = None
try:
parsed_data = json.loads(data)
except TypeError as e:
print("捕获到错误:", e)
正确用法示例
import json
data_str = '{"name": "Alice", "age": 25}'
parsed_data = json.loads(data_str)
print(parsed_data)
print(parsed_data["name"])
如何避免错误
- 在调用
json.loads()
前检查数据是否为None
。 - 如果从 API 请求中获取数据,确保先检查响应状态码。
import requests
import json
response = requests.get("https://api.example.com/data")
if response.status_code == 200:
data = response.text
parsed_data = json.loads(data)
else:
print("请求失败,状态码:", response.status_code)