Python (十六) 错误和异常


程序员的公众号:源1024获取更多资料,无加密无套路!

最近整理了一波电子书籍资料,包含《Effective Java中文版 第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》,《Java并发编程实战》等等
获取方式: 关注公众号并回复 电子书 领取,更多内容持续奉上


 

目录

语法错误

异常

异常处理

处理形式

抛出异常

自定义异常

系列文章索引


Python有两种错误:语法错误和异常。

语法错误

while Trueprint('Hello world')   

这种错误,编译器会给出提示,按照提示修改即可。

异常

语法正确,但是代码运行时被检测到的错误。

print('1' + 2)#报错
TypeError: can only concatenate str (not "int") to str
print(100/0)#报错
ZeroDivisionError: division by zero

上面代码都发生了异常:TypeError异常、ZeroDivisonError异常

异常处理

Python 程序捕捉异常使用 try/except 语句

处理形式
#try/excepttry:...except 异常类型:...#try/except...elsetry:...except 异常类型:...else:...# try-finallytry:...except 异常类型:...else:...finally:...
def testException(n):try:print('try:',100 / n)except ZeroDivisionError:print('except异常逻辑处理。。。')else:print('else 逻辑处理。。。')finally:print('finally 逻辑处理。。。')testException(0)  
#输出
except异常逻辑处理。。。
finally 逻辑处理。。。testException(1)  
#输出
try: 100.0
else 逻辑处理。。。
finally 逻辑处理。。。

else在所有 except 之后使用,没有出现异常时执行;

finally 无论是否出现异常都会执行,最后执行。

抛出异常

a = 0
if a == 0:raise Exception('a不能为0')#输出
Exception: a不能为0

自定义异常

class MyException(Exception):def __init__(self, msg):self.msg = msgdef __str__(self):return repr(self.msg)def test():try:raise MyException('触发自定义异常了。。。')except MyException1 as e:print('MyException异常信息:' + e.msg)else:print('不是MyException异常')    finally:print('结束了。')    test()  
#输出
MyException异常信息:触发自定义异常了。。。
结束了。


系列文章索引

Python(一)关键字、内置函数

Python(二)基本数据类型

Python(三)数据类型转换

Python(四)字符串

Python(五)数字

Python(六) 列表

Python(七) 条件控制、循环语句

Python(八) 字典

Python(九) 集合

Python (十) 元组


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/234539.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【李肯C语言小册.必读】为什么有这份专栏?解决什么问题?有哪些价值?是否值得订阅?

文末有惊喜...... 一、李肯的自我介绍 【昵称】架构师李肯 【坐标】深圳 【职业】主业中厂物联网架构师,副业技术自媒体 【个人标签】 专注于嵌入式物联网超10年的系统架构师 国产操作系统RT-Thread技术社区专家、2022年度优秀布道师 CSDN深圳城市开发者社区主…

软件测试简历怎么写?可以参考这份简历

个人简历 基本信息 姓名:名字 性别:男 年龄:25 学历:本科 联系电话&#xff1a…

滚珠丝杆在各种自动化设备中的作用

滚珠丝杆因其具有高精度、高刚度和长寿命等特性,成为许多设备中的重要组成部分,在许多行业中都有广泛的应用,接下来我们看看滚珠丝杆的具体应用有哪些? 1、打孔机:提供精确的导向,使打孔机的滑块能够沿固定…

Python基础语法之学习字符串快速格式化

Python基础语法之学习字符串快速格式化 一、代码二、效果 一、代码 # 通过f"{占位}"控制字符串快速格式化,不做精度控制 name "张三" age 13 money 12.5 text f"姓名是{name},年龄是{age},钱是{money}" print(text)二、效果 每一天都是一个…

阿里云服务器部署node和npm

目录 1.链接服务器2.找到node 下载地址3获取链接地址4下载到linux5.解压6.重命名 解压后的文件7.配置环境变量7.1复制当前的bin目录7.2vim /etc/profile7.3在按下ESC按键 8.重启环境变量9.输入node10.npm配置加速镜像 1.链接服务器 2.找到node 下载地址 https://nodejs.org/d…

【WP】Geek Challenge 2023 web 部分wp

EzHttp http协议基础题 unsign 简单反序列化题 n00b_Upload 很简单的文件上传&#xff0c;上传1.php&#xff0c;抓包&#xff0c;发现php内容被过滤了&#xff0c;改为<? eval($_POST[‘a’]);?>&#xff0c;上传成功&#xff0c;命令执行读取就好了 easy_php …

商家门店小程序怎么做?门店小程序的优势和好处

生活服务类商家在当前数字化时代&#xff0c;越来越认识到门店小程序的重要性。门店小程序不仅为商家提供了一个在线展示的窗口&#xff0c;更为其打造了一个与消费者直接互动的平台。有了门店小程序&#xff0c;商家可以更加便捷地管理商品信息、订单流程&#xff0c;同时还能…

基于YOLOv8的道路缺陷检测:自研模块 MSAM 注意力 PK CBAM注意力,实现暴力涨点

&#x1f4a1;&#x1f4a1;&#x1f4a1;本文自研创新改进&#xff1a;MSAM&#xff08;CBAM升级版&#xff09;&#xff1a;通道注意力具备多尺度性能&#xff0c;多分支深度卷积更好的提取多尺度特征&#xff0c;最后高效结合空间注意力 1&#xff09;作为注意力MSAM使用&am…

高等数学积分关系定理(格林公式、高斯公式、斯托克斯公式)的理解

1 格林公式、高斯公式、斯托克斯公式 1.1 格林公式&#xff08;Green formula&#xff09; 1.1.1 格林公式例题 1.2 高斯公式&#xff08;Gauss formula&#xff09; 1.2.1 高斯公式例题1 1.2.2 高斯公式例题2 1.3 斯托克斯公式&#xff08;Stokes formula&#xff09; 1.3.1 …

石油化工隐蔽设备AR可视化检修协助系统让新手也能轻松上岗

随着城市基础设施建设的不断推进&#xff0c;地下管线巡检工作的重要性日益凸显。传统的巡检方法已无法满足现代都市的高效运营需求。此时&#xff0c;地下管线AR智慧巡检远程协助系统应运而生&#xff0c;凭借其独特的特点与优势&#xff0c;为城市地下管线巡检带来了革命性的…

嵌入式数据传输及存储的C语言实现

各种类型的数据传输和存储就涉及到大小端的问题&#xff0c;首先要简单说下芯片的大小端问题&#xff0c;这里主要讨论Cortex-M内核。 M内核支持大端或者小端&#xff0c;实际应用中大部分内核都是小端。以STM32为例&#xff0c;全部都是小端&#xff0c;而且是芯片设计之初就固…

半同步复制与MHA高可用架构设计

各位道友好&#xff0c;鼠鼠我呀校招刚通过了移动的面试 &#xff0c;但是安排的岗位是偏远县城里面的岗位&#xff0c;各位能给给建议吗&#xff1f;鼠鼠我啊真不想有时候变成销售员去卖产品&#xff01;&#xff01;&#xff01; 半同步复制与MHA高可用架构设计 一、半同步复…