Python学习笔记调式之抛出异常
随笔记录方便自己和同路人查阅。
#------------------------------------------------我是可耻的分割线-------------------------------------------
当Python试图执行无效代码时,就会抛出异常,以前你可能使用过try和except语句来处理Python的一场,这样程序就可以从你预期的异常中恢复。
但你也可以在代码中抛出自己的异常。抛出异常相当于是说:“停止运行这个函数中的代码,将程序执行转到except语句”。
抛出异常使用raise语句。raise语句包含以下部分:
(1)raise关键字
(2)对Except函数的调用
(3)传递给Except函数的字符串,包含有用的出错信息
#------------------------------------------------我是可耻的分割线-------------------------------------------
示例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | #! python 3 # -*- coding:utf-8 -*- # Autor: Li Rong Yang def boxPrint(symbol,width,height): ''' 创建一个小盒子图像 symbol: 组成小盒子的符号 width:宽度 height:高度 return:返回值 ''' #判断符号是否不等于1 if len (symbol) ! = 1 : raise Exception( 'Sybol must be a single character string' ) #判断宽度是否小于等于2 if width < = 2 : raise Exception( 'Width must be greater than 2.' ) #判断高度是否小于等于2 if height < = 2 : raise Exception( 'Height must be greater than 2.' ) print (symbol * width) for i in range (height - 2 ): print (symbol + ( ' ' * (width - 2 )) + symbol) print (symbol * width) for sym, w, h in (( '*' , 4 , 4 ), ( 'O' , 20 , 5 ), ( 'x' , 1 , 3 ), ( 'ZZ' , 3 , 3 )): try : boxPrint(sym, w, h) except Exception as err: print ( 'An exception happened: ' + str (err)) |
运行结果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异