MST

星途 面试题库

面试题:Python中json.loads反序列化常见问题

在Python中使用json.loads进行反序列化时,如果遇到JSON数据格式错误,比如缺少引号,会抛出什么类型的异常?如何在代码中捕获并处理这个异常以提供更友好的错误提示给用户?
11.2万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
  1. 抛出的异常类型:会抛出 json.JSONDecodeError 异常。
  2. 捕获并处理异常的代码示例
import json

json_str = '{name: "John"}'  # 格式错误的JSON字符串
try:
    data = json.loads(json_str)
except json.JSONDecodeError as e:
    print(f"JSON数据格式错误: {e}")

上述代码中,使用 try - except 语句捕获 json.JSONDecodeError 异常,并向用户打印友好的错误提示。