当前位置: 首页 > wzjs >正文

福建交通建设网站做外贸主要是哪些网站

福建交通建设网站,做外贸主要是哪些网站,网站建设毕业设计提问,网站内页权重查询目录 一、异常处理基础1. 基本语法结构 二、常见异常类型1. 内置异常层次2. 常见异常示例 三、多重异常处理1. 合并捕获2. 分层处理 四、finally与else子句1. finally 应用场景2. else 使用技巧 五、自定义异常1. 创建异常类2. 异常继承体系 六、异常链与上下文1. raise from 语…

目录

    • 一、异常处理基础
      • 1. 基本语法结构
    • 二、常见异常类型
      • 1. 内置异常层次
      • 2. 常见异常示例
    • 三、多重异常处理
      • 1. 合并捕获
      • 2. 分层处理
    • 四、finally与else子句
      • 1. finally 应用场景
      • 2. else 使用技巧
    • 五、自定义异常
      • 1. 创建异常类
      • 2. 异常继承体系
    • 六、异常链与上下文
      • 1. raise from 语法
      • 2. 异常上下文查看
    • 七、最佳实践与陷阱
    • 综合实战案例


异常处理流程图

一、异常处理基础

1. 基本语法结构

try:# 可能引发异常的代码result = 10 / 0
except ZeroDivisionError:# 处理特定异常print("不能除以零!")
except Exception as e:# 通用异常处理print(f"发生错误: {e}")
else:# 无异常时执行print("计算成功")
finally:# 始终执行的清理代码print("清理资源")
  1. 异常传播机制
触发异常
当前代码有try块?
匹配except
向调用栈上层传播
执行对应处理
到达顶层?
程序崩溃

二、常见异常类型

1. 内置异常层次

所有异常类都继承 BaseException

BaseException├── KeyboardInterrupt├── SystemExit└── Exception├── ArithmeticError│    ├── ZeroDivisionError│    └── FloatingPointError├── LookupError│    ├── IndexError│    └── KeyError├── OSError│    ├── FileNotFoundError│    └── PermissionError└── ValueError

2. 常见异常示例

# 文件操作
try:with open("nonexist.txt") as f:content = f.read()
except FileNotFoundError:print("文件不存在")# 类型转换
try:num = int("abc")
except ValueError:print("无效的数字格式")# 字典操作
d = {"key": "value"}
try:print(d["missing"])
except KeyError:print("键不存在")

三、多重异常处理

1. 合并捕获

try:# 可能抛出多种异常的代码
except (TypeError, ValueError) as e:print(f"输入类型错误: {e}")

2. 分层处理

try:data = json.loads(invalid_json)
except json.JSONDecodeError:print("JSON解析失败")
except Exception:print("其他未知错误")

四、finally与else子句

1. finally 应用场景

file = None
try:file = open("data.txt", "r")process(file)
except IOError:print("文件操作错误")
finally:if file:file.close()  # 确保资源释放

2. else 使用技巧


try:result = risky_operation()
except NetworkError:handle_error()
else:save_result(result)  # 仅在成功时执行

五、自定义异常

1. 创建异常类

class InvalidEmailError(ValueError):"""自定义邮箱格式异常"""def __init__(self, email):super().__init__(f"无效邮箱格式: {email}")self.email = email# 使用示例
email = "user@"
if "@" not in email or "." not in email.split("@")[1]:raise InvalidEmailError(email)

2. 异常继承体系

class DatabaseError(Exception):"""数据库操作基类异常"""class ConnectionError(DatabaseError):"""数据库连接异常"""class QueryError(DatabaseError):"""SQL查询异常"""

六、异常链与上下文

1. raise from 语法

try:config = load_config()
except FileNotFoundError as e:raise RuntimeError("配置加载失败") from e

2. 异常上下文查看

try:# 可能出错的代码
except Exception as e:print("原始异常:", e.__cause__)print("上下文:", e.__context__)

七、最佳实践与陷阱

推荐做法

  1. 具体异常捕获优先
  2. 添加有意义的错误信息
raise ValueError(f"无效参数值: {value}")
  1. 日志记录异常
import logging
try:process()
except Exception:logging.exception("处理失败")

⚠️ 避免陷阱

  1. 捕获过于宽泛的异常
try:...
except:  # 捕获所有异常,包括KeyboardInterruptpass
  1. 忽略异常
try:...
except Exception:pass  # 静默失败
  1. 重复抛出异常
try:...
except Exception as e:print(e)raise  # 保留原始堆栈信息

综合实战案例

网络请求重试机制

import requests
from time import sleepdef fetch_data(url, retries=3):for attempt in range(retries):try:response = requests.get(url, timeout=5)response.raise_for_status()return response.json()except requests.HTTPError as e:print(f"HTTP错误: {e}")except requests.Timeout:print("请求超时")except requests.RequestException:print("网络连接问题")if attempt < retries - 1:sleep(2 ** attempt)  # 指数退避raise Exception(f"请求失败,已重试{retries}次")# 使用示例
data = fetch_data("https://api.example.com/data")

通过掌握这些异常处理技巧,您可以:

  • 编写更健壮的程序
  • 提高错误诊断效率
  • 创建更友好的用户交互体验
  • 构建可维护的异常处理体系

建议在实际开发中结合具体业务场景,设计合理的异常处理策略,并定期审查异常处理代码的有效性

http://www.dtcms.com/wzjs/581926.html

相关文章:

  • 网站建设的需求是什么电子商务网站建设设计方案
  • 湖州民生建设有限公司网站django 微信小程序开发教程
  • 科技 网站 推荐小型装修公司店面装修
  • 做网站那个语言好网站备案好处
  • phpcms 做购物网站网站建设国风网络公司
  • 手机设计企业网站怎么给网站做推广
  • 电商网站 知名案例为什么自己做的网站uc打不开
  • php的网站数据库如何上传做美工要开通什么网站的会员呢
  • 网站底部的备案信息高清图片素材哪里找
  • 设计学网站建设网站公司推荐
  • flask做的网站国内十个免费自学网站
  • 电子商务网站建设与运营的试题哪个视频网站做直播销售
  • 车务网站开发制作视频的免费软件
  • 沈阳市和平区建设局网站黄冈网站建设营销
  • 简洁大气企业网站模板百度免费优化
  • 邹城网站建设哪家便宜慈溪市建设厅网站
  • 怎么给网站加代码门业网站 源码
  • 网站建设部网国家建设标准发布网站在哪里
  • php个人网站简洁互联网推广网站建设
  • 绿色手机网站模板北京最牛计算机培训机构
  • 为你做的网站个人网站建设的小清新图片
  • 长沙营销型网站建设制作摄影工作室官网
  • 微信公众号登录wordpress网站吗如何优化购物网站建设
  • 乌海品牌网站建设爱做片视频网站
  • 广州的网站建设公司哪家好网站开发后端语言有哪些
  • 制作自己盈利的网站怎样做网站平台
  • 网站常用 英文国内知名的wordpress网站
  • 海尔网站建设目的专门做排行榜的软件
  • 成都 网站建设 app 开发黄骅住房和城乡建设局网站
  • 仿牌网站优化做方案的网站