Python 常见报错及解决方案梳理
在 Python 开发过程中,遇到报错是常态。掌握常见报错的含义及解决方法能极大提升调试效率。以下整理了高频异常及其处理策略,涵盖属性、文件、缩进、索引、类型等多个维度。
1. AttributeError:对象没有相关属性
描述:访问的对象不存在指定的属性或方法。 可能原因:
- Python 内置对象没有该属性。
- 自定义对象未设置该属性。
- 通过类名访问实例属性(应使用实例名)。
- 拼写错误。 解决方案:
- 检查属性名称拼写。
- 确认对象是否已正确初始化。
- 避免通过类名直接访问实例属性。
class Person:
def __init__(self):
self.name = "Alice"
p = Person()
print(p.age) # 会抛出 AttributeError
2. FileExistsError:文件已存在
描述:尝试创建已存在的文件或目录。 解决:先判断文件是否存在,若存在则跳过创建或使用覆盖模式。
import os
if not os.path.exists("test.txt"):
with open("test.txt", "w") as f:
f.write("Hello")
3. FileNotFoundError:文件或目录不存在
描述:请求的文件或目录路径无效。 解决:检查路径字符串是否正确,确保相对/绝对路径无误。
try:
with open("missing.txt", "r") as f:
pass
except FileNotFoundError:
print("文件未找到")

