【Python】P4 异常处理

Python 异常处理

Python 中对于异常的处理主要通过 try-exceptfinallyraise 语句实现。

  1. try-except 语句:

尝试执行一段代码,如果该代码块引发了异常,那么将跳过 try 代码块中剩余的代码,转而执行相应的 except 子句。

try:  x = 1/0  
except ZeroDivisionError:  x = 0  print("除数为零")

然而更多时候我们并不直接得知发生异常的原因。所以更一般的,我们使用如下异常处理语句:

try:  x = 1 / 0  
except Exception:  print("发生了未知异常")

如果希望能将异常的问题打印出,我们使用如下异常处理语句:

import traceback
try:print(1/0)
except Exception as err:traceback.print_exc()print(err)
  1. final 语句:

无论是否发生异常,都会执行finally代码块中的代码。通常用于资源的清理操作,如关闭文件、释放资源等。

import traceback
try:  f = open("file.txt", "r")	# 尝试打开文件  data = f.read()  
except Exception as err:traceback.print_exc()  print(err)	# 文件未找到
finally:# 无论是否发生异常,都关闭文件  f.close()
  1. raise 语句:

手动抛出异常。可以指定要抛出的异常类型和异常信息。但是要谨慎使用手动抛出异常,因为会导致程序意外终止。

s = eval(input("请输入整数"))
token = "" if s % 3 == 0 or s % 5 == 0 else "不"
raise ValueError("输入参数不合法")
print("{}{}能被3或5整除".format(s, token))

第一版完成
2024/1/17
如有任何问题建议,请指针,谢谢!

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

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

相关文章

云服务器 云服务器概述-产品简介-文档中心-腾讯云

腾讯云服务器入门教程包括云服务器CPU内存带宽配置选择,选择云服务器CVM或轻量应用服务器,云服务器创建后重置密码、远程连接、搭建程序环境等,腾讯云服务器网txyfwq.com分享从0到1腾讯云服务器入门教程: 腾讯云服务器入门教程 …

C++中的引用及指针变量

目录 1.1 C中的引用 1.2 C中的指针变量(pointer) 1.1 C中的引用 C中的引用(reference)是一种特殊的变量,它是某个已存在变量的另一个名字。引用变量与指针变量类似,但引用变量必须在声明时进行初始化&…

CSDN 年度总结|知识改变命运,学习成就未来

欢迎来到英杰社区: https://bbs.csdn.net/topics/617804998 欢迎来到阿Q社区: https://bbs.csdn.net/topics/617897397 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步&#xff…

Python操作PDF的全面指南

引言: 在现代数字化时代,PDF(Portable Document Format)已成为一种常见的文档格式。无论是在工作中还是在学习中,我们经常需要处理和操作PDF文件。幸运的是,Python提供了许多强大的库和工具,可以…

「许战海矩阵战略洞察」吉香居给调味品企业带来的战略启示

引言:吉香居通过实施份额化战略和打造形象产品,在调味品行业中取得了成功。但品牌结构需要调整,需要将子品牌整合到吉香居主品牌下,共同提升品牌势能。此外,企业需保持主品牌竞争战略,以实现长期稳定的高速…

transfomer中正余弦位置编码的源码实现

简介 Transformer模型抛弃了RNN、CNN作为序列学习的基本模型。循环神经网络本身就是一种顺序结构,天生就包含了词在序列中的位置信息。当抛弃循环神经网络结构,完全采用Attention取而代之,这些词序信息就会丢失,模型就没有办法知…

进阶Docker4:网桥模式、主机模式与自定义网络

目录 网络相关 子网掩码 网关 规则 docke网络配置 bridge模式 host模式 创建自定义网络(自定义IP) 网络相关 IP 子网掩码 网关 DNS 端口号 子网掩码 互联网是由许多小型网络构成的,每个网络上都有许多主机,这样便构成了一个有层次的结构。 IP 地…

python实现屏幕颜色获取

为了实时监听鼠标移动并输出鼠标当前位置的颜色值,你可以结合使用pyautogui和pynput库。pynput库可以用来监听鼠标事件,而pyautogui则可以用来获取鼠标当前位置的屏幕颜色。 首先,你需要安装这两个库(如果尚未安装)&a…

FreeBSD上安装mysql数据库

安装前提 1、使用pkg安装mysql有个前提FreeBSD版本12.2及以上。 2、内存最好是8GB及以上 安装 $ pkg search mysql …… mysql80-client-8.0.35 Multithreaded SQL database (client) mysql80-server-8.0.35 Multithreaded SQL database (server) mysql81…

SpringAOP-说说 Spring AOP 和 AspectJ AOP 区别

Spring AOP Spring AOP 属于运行时增强,主要具有如下特点: 基于动态代理来实现,默认如果使用接口的,用 JDK 提供的动态代理实现,如果是方法则使用 CGLIB 实现Spring AOP 需要依赖 IOC 容器来管理,并且只能…

浅谈安科瑞铁塔/基站电力监控解决方案

I.背景信息: 2020年5G元年,通信行业承蓬勃发展之态,各大运营商和铁塔集团在布局新一代通讯基站。基站用电量不断上升,通信基站智能化电力监控及节能管理已成为各运营商企业的研究方向。 而同时,目前铁塔基站电力使用…

靶机-basic_pentesting_2

basic_pentesting_2 arp-scan -l查找靶机IP masscan 192.168.253.154 --ports 0-65535 --rate10000 端口扫描 nmap扫描nmap -T5 -A -p- 192.168.253.154 目录扫描80端口 http://192.168.253.154/development/dev.txt 2018-04-23: I’ve been messing with that struts stu…

面向Java开发者的ChatGPT提示词工程(10)

在ChatGPT的众多应用中,拼写检查和语法检查犹如璀璨的明珠,受到广大用户的热烈追捧。我对此深信不疑,且一直在实践中坚定不移。特别是在使用非母语的情况下,它的作用更为显著。接下来,让我们通过一些常见的拼写和语法问…

mipi协议

完成mipi信号通道分配后,需要生成与物理层对接的时序、同步信号: MIPI规定,传输过程中,包内是200mV、包间以及包启动和包结束时是1.2V,两种不同的电压摆幅,需要两组不同的LVDS驱动电路在轮流切换工作&#…

数据集成时表模型同步方法解析

01 背景介绍 数据治理的第一步,也是数据中台的一个基础功能 — 即将来自各类业务数据源的数据,同步集成至中台 ODS 层。业务数据源多种多样,单单可能涉及到的主流关系型数据库就有近十种。功能更加全面的数据中台通常还具有对接非关系型数据…

mac查看maven版本报错:The JAVA_HOME environment variable is not defined correctly

终端输入mvn -version报错: The JAVA_HOME environment variable is not defined correctly, this environment variable is needed to run this program. Java环境变量的问题,打开bash_profile查看 open ~/.bash_profile export JAVA_8_HOME/Library/Java/JavaVirtualMachine…

Python图像处理【18】边缘检测详解

边缘检测详解 0. 前言1. 图像导数2. LoG/zero-crossing2.1 Marr-Hildteth 算法 3. Canny 与 holistically-nested 算法3.1 Canny 边缘检测3.2 holistically-nested 边缘检测 小结系列链接 0. 前言 边缘是图像中两个区域之间具有相对不同灰级特性的边界,或者说是亮度…

学习记录1.14

1.display: 2.bfc: Bfc是块级格式化上下文 子元素不受外界影响 有自己的渲染规则 比如说:计算高度的时候浮动元素的高度也会计算在内 怎样触发BFC 绝对定位以及固定定位 flex布局 display不是none的情况 overflow:hidde…

应用案例 | Softing工业物联网连接解决方案助力汽车零部件供应商实现智能制造升级

随着业务的扩展和技术的进步,某国际先进汽车零部件供应商在其工业物联网的升级方案中使用了Softing的dataFEED OPC Suite——通过MQTT协议将现场控制器和数控系统的数据上传到其物联网云平台,从而实现了设备状态的远程监控,不仅能够提前发现设…

【机器学习300问】9、梯度下降是用来干嘛的?

当你和我一样对自己问出这个问题后,分析一下!其实我首先得知道梯度下降是什么,也就它的定义。其次我得了解它具体用在什么地方,也就是使用场景。最后才是这个问题,梯度下降有什么用?怎么用? 所以…