【Python修仙笔记.8】异常处理护体 - 防御心魔
【摘要】 故事情节王麻子代码出错,程序崩溃。老头说:“小子,这是心魔!用异常处理护体。”王麻子:“异常?怎么防?”老头:“try except, 捕捉错误,继续运行。”王麻子处理后:“心魔退散,代码稳了!” 编程知识点讲解老头:“try: 代码 except Exception as e: print(e) else: … finally: …”特定异常 like ValueError.老头:“异常...
故事情节
王麻子代码出错,程序崩溃。老头说:“小子,这是心魔!用异常处理护体。”
王麻子:“异常?怎么防?”
老头:“try except, 捕捉错误,继续运行。”
王麻子处理后:“心魔退散,代码稳了!”
编程知识点讲解
老头:“try: 代码 except Exception as e: print(e) else: … finally: …”
特定异常 like ValueError.
老头:“异常像心魔,处理好,修仙无阻!”
实战代码示例
try:
x = 1 / 0
except ZeroDivisionError as e:
print("不能除0!", e)
else:
print("成功")
finally:
print("结束")
try:
num = int("abc")
except ValueError:
print("转换失败")
趣味练习题
-
写try except处理除0错误。
-
处理文件打开异常,如果文件不存在打印消息。
-
用finally确保资源清理。
练习题答案与解释
-
处理除0错误:
try: result = 10 / 0 except ZeroDivisionError: print("不能除以0!")解释: 使用try-except捕捉ZeroDivisionError,防止程序崩溃,并打印友好消息。
-
文件打开异常:
try: with open('nonexistent.txt', 'r') as f: print(f.read()) except FileNotFoundError: print("文件不存在!")解释: 尝试打开不存在的文件,捕捉FileNotFoundError,打印消息。这处理了常见IO错误。
-
使用finally清理:
try: f = open('file.txt', 'r') content = f.read() print(content) except Exception as e: print("发生错误:", e) finally: f.close() print("文件已关闭")解释: finally块确保文件关闭,无论是否发生异常。这演示了资源管理。
本章知识点总结
-
try except捕捉异常.
-
else成功时, finally总是执行.
-
护体神功,让代码 robust!
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)