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"])

如何避免错误

  1. 在调用 json.loads() 前检查数据是否为 None
  2. 如果从 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)

上一篇      下一篇