杭州网站建设网络公司修改 自豪地采用wordpress

张小明 2026/1/19 17:32:01
杭州网站建设网络公司,修改 自豪地采用wordpress,英文企业网站建设,做机械的专业外贸网站有哪些在编程过程中#xff0c;程序难免会遇到各种错误和意外情况。Python 提供了强大的异常处理机制#xff0c;帮助开发者优雅地应对这些问题#xff0c;避免程序因一个错误而直接崩溃。本文将系统介绍 Python 中常见的异常类型、异常处理语法以及最佳实践。一、什么是异常…在编程过程中程序难免会遇到各种错误和意外情况。Python 提供了强大的异常处理机制帮助开发者优雅地应对这些问题避免程序因一个错误而直接崩溃。本文将系统介绍 Python 中常见的异常类型、异常处理语法以及最佳实践。一、什么是异常Exception异常是指程序在运行过程中发生的错误事件它会中断正常的执行流程。例如除以零、访问不存在的文件、调用无效的方法等。Python 使用“抛出异常”raise exception的方式来通知错误并允许我们通过捕获异常catch exception来处理这些错误。✅ 正确处理异常可以让程序更健壮、用户体验更好。二、常见内置异常类型Python 内置了多种异常类所有异常都继承自BaseException。以下是开发中最常遇到的一些异常类型异常类型触发场景示例SyntaxError语法错误代码写错if True print(hello)IndentationError缩进错误错误的空格/Tab使用NameError变量未定义print(x)而x未声明TypeError类型不匹配2 2字符串加整数ValueError值不合适int(abc)IndexError索引越界lst[10]而列表只有3个元素KeyError字典键不存在dct[missing_key]AttributeError对象没有该属性obj.nonexistent_method()FileNotFoundError文件不存在open(missing.txt)IOError/OSError输入输出错误如权限不足读写文件失败ZeroDivisionError除以零5 / 0ImportError导入模块失败import nonexistent_moduleModuleNotFoundError模块未找到ImportError 子类导入不存在的包KeyboardInterrupt用户按下 CtrlC 终止程序手动中断运行提示这些异常都是类可以被捕捉和处理。三、异常处理的基本语法try-exceptPython 使用try...except结构来捕获并处理异常。基本结构try:# 尝试执行可能出错的代码result 10 / 0except ZeroDivisionError:# 如果发生指定异常则执行这里的代码print(不能除以零)捕获多个异常方法1分别处理不同异常try:num int(input(请输入一个数字))result 10 / numprint(f结果是{result})except ValueError:print(输入的不是有效数字)except ZeroDivisionError:print(不能除以零)方法2用一个 except 处理多个异常except (ValueError, ZeroDivisionError) as e:print(f发生了错误{e})四、完整的异常处理结构try-except-else-finallyPython 支持更复杂的异常控制结构try:file open(data.txt, r)content file.read()number int(content.strip())except FileNotFoundError:print(文件未找到。)except ValueError:print(文件内容不是一个有效的数字。)else:# try 成功执行后才运行无异常print(f读取到的数字是{number})finally:# 无论是否出错都会执行通常用于清理资源print(清理工作...)各部分作用说明块是否必需功能try是包含可能出错的代码except是至少一个捕获并处理异常else否无异常时执行finally否总是执行适合关闭文件、释放资源等五、抛出异常raise关键字我们可以主动抛出异常用于验证条件或传递错误信息。示例1手动抛出异常age -5if age 0:raise ValueError(年龄不能为负数)示例2自定义异常信息raise TypeError(期望字符串类型但得到了整数)示例3重新抛出异常用于日志记录后继续传播try:risky_operation()except Exception as e:print(f记录错误{e})raise # 重新抛出原异常六、自定义异常类当内置异常无法满足需求时我们可以创建自己的异常类型。创建自定义异常class InvalidAgeError(Exception):表示年龄无效的自定义异常def __init__(self, age, message年龄不在合法范围内):self.age ageself.message messagesuper().__init__(self.message)# 使用自定义异常def set_age(age):if not (0 age 150):raise InvalidAgeError(age)print(f设置年龄为{age})# 调用测试try:set_age(200)except InvalidAgeError as e:print(f错误{e}输入的年龄是 {e.age})输出错误年龄不在合法范围内输入的年龄是 200✅ 自定义异常有助于提高代码可读性和维护性。七、实际应用示例安全读取配置文件import jsondef load_config(file_path):try:with open(file_path, r, encodingutf-8) as f:config json.load(f)except FileNotFoundError:print(f警告配置文件 {file_path} 不存在使用默认配置。)return {host: localhost, port: 8080}except json.JSONDecodeError as e:print(f配置文件格式错误{e})return {}except PermissionError:print(没有权限读取配置文件。)return Noneelse:print(配置加载成功。)return configfinally:print(配置加载过程结束。)# 使用config load_config(config.json)八、异常处理的最佳实践不要滥用except:或except Exception:# ❌ 危险会隐藏所有错误try:something()except:pass尽量具体地捕获异常# ✅ 推荐except ValueError as e:handle_value_error(e)记录异常信息便于调试import loggingtry:...except Exception as e:logging.error(f发生异常{e}, exc_infoTrue)避免空的except块至少打印或记录错误信息。使用with替代手动资源管理如文件操作中使用with open()自动处理关闭。不要忽略 KeyboardInterrupt 和 SystemExit它们是用户中断信号不应被普通except Exception捕获。九、总结要点说明 目标让程序在出错时不崩溃提供友好反馈 核心语法try,except,else,finally,raise 常见异常ValueError,TypeError,FileNotFoundError等 最佳做法精确捕获、合理处理、适当抛出、日志记录️ 高级技巧自定义异常、链式异常、上下文管理器配合使用小练习建议编写一个函数safe_divide(a, b)实现两个数的安全除法若b 0捕获ZeroDivisionError若参数不是数字捕获TypeError成功则返回结果失败则返回None并提示错误信息def safe_divide(a, b):try:return a / bexcept ZeroDivisionError:print(错误除数不能为零。)return Noneexcept TypeError:print(错误请输入数字。)return Noneprint(safe_divide(10, 2)) # 5.0print(safe_divide(10, 0)) # 错误提示print(safe_divide(a, 2)) # 错误提示掌握异常处理是成为合格 Python 开发者的重要一步。善用异常机制让你的程序更加稳定、可靠、易于维护
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

如何变更网站备案信息查询中国建筑装修网

指纹比对系统重构:公安场景下TensorRT的实际价值 在千万级指纹数据库中,如何让一次身份比对的响应时间从“秒级”压缩到“毫秒级”?这不是一个理论问题,而是某省公安刑侦支队每天要面对的真实挑战。现场采集一枚模糊指纹后&#…

张小明 2026/1/17 4:18:26 网站建设

临沂做网站小程序模板平台有哪些

LangFlow vs 手写代码:哪种方式更适合快速构建AI应用? 在大模型技术席卷各行各业的今天,越来越多企业试图通过 LangChain 等框架打造自己的 AI 智能体、知识问答系统或自动化流程。然而,一个现实问题摆在面前:是该让工…

张小明 2026/1/17 18:00:22 网站建设

中国建设银行杭州分行网站做网站的资源哪里找

一、项目介绍 本项目基于先进的深度学习目标检测算法YOLOv11,开发了一套高效、准确的苹果新鲜与腐烂状态检测系统。系统通过YOLOv11模型对苹果图像进行实时检测,能够精准区分新鲜苹果和腐烂苹果,并输出检测结果与置信度。项目采用高质量的YO…

张小明 2026/1/17 18:00:23 网站建设

产品推广网站排名网站做记录访客

你是否有过这样的经历:论文写到一半,思路突然中断,对着屏幕枯坐良久,却无法将思考推进一寸?这种“卡壳”的停滞感,是学术写作中最消耗心力与时间的无形障碍。 从文献综述到数据分析,从论证推演到…

张小明 2026/1/17 18:00:25 网站建设

进贤县住房和城乡建设局网站房产类网站建设费用

终极指南:如何在macOS 11系统上完美运行Xbox 360手柄 【免费下载链接】360Controller 项目地址: https://gitcode.com/gh_mirrors/36/360Controller 当你升级到macOS Big Sur或更高版本后,是否发现心爱的Xbox 360手柄突然"失联"了&…

张小明 2026/1/17 18:00:26 网站建设

南京产品网站建设收费网站建设属于什么支出

Bypass Paywalls Clean完整教程:轻松解锁付费新闻阅读权限 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在数字信息时代,优质新闻内容往往被付费墙所阻隔&am…

张小明 2026/1/17 18:00:26 网站建设