python如何手动抛出异常

在 Python 中,可以使用 raise 关键字手动抛出(引发)异常。例如:

抛出内置异常

python 复制代码
raise ValueError("这是一个自定义错误信息")

抛出自定义异常

  1. 先定义一个异常类(通常继承自 Exception):
python 复制代码
class MyCustomError(Exception):
    pass
  1. 然后使用 raise 抛出它:
python 复制代码
raise MyCustomError("发生了自定义异常!")

注意事项

  • 可以在任何需要地方(比如函数中、条件分支里)抛出异常。
  • 抛出异常后,如果没有被捕获,程序会终止并显示异常信息。

示例完整代码

python 复制代码
def check_number(x):
    if x < 0:
        raise ValueError("x不能为负数")
    return x

try:
    check_number(-10)
except ValueError as e:
    print("捕获到异常:", e)

总结:

raise 异常类型("异常描述") 语法可以手动抛出异常。

相关推荐
wuqingshun3141596 小时前
什么是责任链模式,一般用在什么场景?
java·责任链模式
世界哪有真情7 小时前
拿人类意识卡 AI?等于用 bug 验收正式产品
前端·人工智能·后端
:-)7 小时前
算法-归并排序
java·开发语言·数据结构·算法·排序算法
wuqingshun3141597 小时前
说一下消息队列的模型有哪些?
java
Listen·Rain8 小时前
Vue3:setup详解
前端·javascript·vue.js
fīɡЙtīиɡ ℡8 小时前
布隆过滤器
java
Patrick_Wilson9 小时前
修好 bug 只是开始:一次由监控需求反向重构日志结构的复盘
前端·监控·数据可视化
yaoxin5211239 小时前
462. Java 反射 - 获取声明类与封闭类
java·开发语言·python
kyriewen9 小时前
面试官让我优化一个卡死的表格,我打开 Claude 五秒重写,他放下咖啡问我要不要来当组长
前端·javascript·面试
中微极客9 小时前
解锁LLM开发全栈能力:Python + LangChain + RAG 工程实战指南
人工智能·python·langchain