P叔带你学Python-22-异常处理Try Except

Python异常处理实战:从崩溃报警到生产级韧性工程 在Python开发中,异常(Exception)是运行时程序与外部不确定性交互的核心机制,其本质并非错误本身,而是系统状态失配的信号。理解异常与错误(Error)的编译期/运行期分界,掌握try/except/else/finally的分层控制流设计,是构建高可用服务的基础能力。尤其在Web API、数据管道和定时任务等典型场景中,空值(None)、falsy值误用、异常类型混淆、缺少finally资源清理等问题,直接导致半夜告警、连接泄漏与雪崩故障。本文基于金融级Python后端实践,融合Python 3 阅读详情

在Python编程中,出现错误是很常见的。有时这些错误是可以预测的,但有时它们也是意想不到的。Python提供了一种名为“try-except”的异常处理机制,用于在程序中处理这些错误。

在这里插入图片描述

基本语法

try-except的基本语法如下所示:

try:       # 可能会引发异常的代码块   except:       # 处理异常的代码块   

在这个语法中,我们将可能会引发异常的代码放在try代码块中,并在except代码块中处理异常。

示例

让我们看一个简单的示例。假设我们想要打开一个不存在的文件,并读取其中的内容。下面是没有异常处理的代码:

file = open("nonexistentfile.txt", "r")   contents = file.read()   file.close()   print(contents)   

如果我们运行这段代码,将会抛出一个FileNotFoundError异常,因为我们试图打开一个不存在的文件。

现在让我们使用try-except来处理这个异常:

try:       file = open("nonexistentfile.txt", "r")       contents = file.read()       file.close()       print(contents)   except FileNotFoundError:       print("File not found!")   

在这个代码中,我们将尝试打开文件的代码放在了try代码块中。如果打开文件时出现异常,那么我们就会进入except代码块,并输出“File not found!”。

多个异常处理

有时候我们可能会遇到多种不同类型的异常,例如文件找不到、文件无法读取等等。在这种情况下,我们可以使用多个except代码块来处理不同类型的异常:

try:       file = open("nonexistentfile.txt", "r")       contents = file.read()       file.close()       print(contents)   except FileNotFoundError:       print("File not found!")   except:       print("An error occurred!")   

在这个代码中,我们首先尝试打开文件。如果打开文件时发生了FileNotFoundError异常,我们就会进入第一个except代码块,并输出“File not found!”。如果发生了其他任何类型的异常,我们就会进入第二个except代码块,并输出“An error occurred!”。

最终处理

有时候我们希望在无论是否发生异常时都执行一些代码。在这种情况下,我们可以使用finally代码块。finally代码块中的代码将在try-except代码块结束时执行,无论是否发生异常:

try:       file = open("nonexistentfile.txt", "r")       contents = file.read()       file.close()       print(contents)   except FileNotFoundError:       print("File not found!")   except:       print("An error occurred!")   finally:       print("Execution complete.")   

在这个代码中,无论是否发生异常,最终都会输出“Execution complete.”。

结论

在Python编程中,异常处理是一项重要的技能。try-except机制使得我们可以优雅地处理可能出现的错误。无论是在处理文件、网络连接、用户输入还是其他任何方面,try-except都是Python编程中不可或缺的一部分。使用try-except可以避免程序崩溃或产生不可预测的行为,从而让我们的代码更加健壮和可靠。

希望本篇文章能够帮助您学会使用try-except机制来处理Python中的异常情况。

完整示例代码如下:

try:       file = open("nonexistentfile.txt", "r")       contents = file.read()       file.close()       print(contents)   except FileNotFoundError:       print("File not found!")   except:       print("An error occurred!")   finally:       print("Execution complete.")   

—END—

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。img
img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。img

六、面试宝典

在这里插入图片描述

在这里插入图片描述

简历模板在这里插入图片描述​
MOSFET和IGBT栅极驱动器电路的基本原理学习(2) 1.PWM直接驱动 驱动主开关晶体管栅极的最简单方法是利用 PWM 控制器的栅极驱动输出,如图 (1)如 图 8中所示,PWM 控制器和 MOSFET 之间可能有较大距离。由于栅极驱动和接地环路迹线形成的环路,这个距离形成了寄生电感,从而降低了开关速度,并导致栅极驱动波形中形成振铃。为了降低与栅极驱动连接相关的电感,需要更宽的 PCB 迹线。 (2)直接栅极驱动的另一个问题是PWM 控制器的驱动电流能力有限。极少有集成电路能提供高于 1A 的峰值栅极驱动能力。 2.旁路电容的确定 (1)位置 如果是独立的 阅读详情

相关推荐

Android BluetoothSocket

BluetoothSocket是Android中用于在蓝牙设备之间进行数据传输的一种Socket。它提供了一种类似于TCP/IP协议的数据传输方式,可以在两个设备之间建立一个虚拟的通信管道,使得两个设备之间可以进行数据的传输和接收。BluetoothSocket可以用于客户端和服务端之间的通信,通过BluetoothSocket可以实现数据的双向传输。

liuning1985622的博客 1478

2024年P叔带你学Python-22-异常处理Try Except

🍅 硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。🍅 技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。🍅 面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。🍅 知识体系:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、Python、前端等等。网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

2401_84563254的博客 103

RKNN3588——YOLOv8的PT模型转RKNN模型

1. 首先克隆rknn修改后的ultralytics版本项目到本地主要是修改了源码的ultralytics/nn/modules/head.py和ultralytics/engine/exporter.py两个文件。2. 使用修改后的ultralytics对pt模型进行模型转换,此处的format=rknn代表支持rknn后续的转换,而不是用onnx,一定要注意!!!

张飞飞的博客 7180

python try except捕获所有异常_说说Python中的异常捕获?

公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。废话不多说,开始今天的题目:问:说说Python中的异常捕获?答:每个程序,经常会...

weixin_39754142的博客 7540

Eureka常见面试题总结

点击关注我的博客原文 Eureka是Netflix组件的一个子模块,也是核心模块之一。云端服务发现,一个基于 REST 的服务,用于定位服务,以实现云端中间层服务发现和故障转移(来源springcloud中文网的介绍:https://www.springcloud.cc/)。下图总结了Eureka服务端(以下简称服务端)与Eureka客户端(以下简称客户端)之间协同工作的流程: 流程说明:...

u012105931的博客 2万+

Buck-Boost电路

前面我们学习了降压的Buck电路 (左图) 和升压的Boost电路 (右图),那么如果我们把Buck电路和Boost电路结合一下会发生什么情况? 我们尝试着画一下: 我们用Buck电路作为输入,然后用Boost电路进行调整,最后输出。因此Buck电路中的负载、Boost电路的电源都可以删掉。得到下图: 由于Buck电路中的C2的作用是在输出的时候滤波,这个功能已经由Boost电路中的C1实现了,因此可以删除Buck电路中的C2电容。得到下图: 这里两个电感处于串联状态,可以合二为一,得到下面的电路:

wangeil007的博客 4万+

python try expect_Python基础23 捕获异常 try-except

1 #异常23 #捕获异常4 #try-except语句5 #基本语法格式为6 #try:7 #8 #excep[异常类型]:9 #10 #注意:11 #一个try模块可能伴随多个except模块12 #如果except不指定[异常类型]的话13 #except就会接收所有异常类型1415 importdatetime as dt16 #导入Python内置datetime时间模块并取别名dt17...

weixin_39628594的博客 398

uniapp [全端兼容] - 详细实现引入使用 Google 谷歌地图显示及搜索城市地点,提供地图标点、地址搜索、定位导航、中文显示及汉化、地图打位置标点显示、搜索框搜索功能、省市区详细经纬度数据等

uniapp,h5移动端网页,微信小程序,Android,苹果ios,app,nvue,谷歌地图,官方,谷歌官方文档,googlemap,申请key,uniApp谷歌地图,详细使用教程,无法访问,集成谷歌地图,app引入谷歌地图,选点定位,地图导航,位置搜索,城市搜索,文字地点模糊查询,地点省市区详细数据,经纬度信息,markers地图标记点,一直报错怎么办,接入google地图不显示报错,谷歌地图插件,vue3,vue2,组件,Key申请流程,谷歌key怎么申请,api文档,网站打不开,用什么插件,在u

🏆 前端领域优质创作者 1万+

Python_Example_异常try except 学习/经验/示例

Author: 楚格 2018-11-0720:56:52 IDE: Pycharm2018.02 Python 3.7 KeyWord : 异常 Explain: ------------------- 1 # 2 ''' 3 # 异常基本格式 4 ''' 5 try: 6 print('hello') 7 exce...

ananzhou9118的博客 312

【Unity小游戏】整整一个周末写一款《皇室战争 玩法》 的 即时战斗类 游戏Demo。两万多字游戏制作过程+解析

Unity游戏制作,本篇文章介绍了复刻皇室战争玩法的一个自制小游戏,共有该游戏的两万字教程加制作过程,欢迎品尝! 世界上没有绝对的公平,如果我们起点就比别人第一步,那就更需要比别人努力了。

努力前行,总会成为自己心中的那道光 12万+

17 指挥AI写Mamba相关模型代码,快速适配大模型场景

本文为《30天掌控AI编程:从指令到落地,手把手教你指挥AI写代码》系列第十七篇,属于第三阶段多场景实战核心内容。本篇聚焦当下大模型领域热门的**Mamba架构**,针对零基础大模型开发、无深度学习基础的使用者,拆解指挥AI生成Mamba基础模型、微调适配、推理部署代码的核心方法,覆盖Mamba基础模块搭建、简易序列建模、小样本微调、本地推理等高频场景,提供可直接复用的高质量指令模板、完整可运行代码、环境配置与避坑指南,无需精通Transformer、状态空间模型等底层原理,轻松上手Mamba大模型开发。

coreopt的博客 61

Python学习22——异常处理

Python学习22——异常处理 文章目录异常处理 异常处理 1、什么是异常 异常是错误发生的信号,一旦程序出错就会产生一个异常 如果该异常没有被处理,该异常就会被抛出来,程序的运行随即终止 异常是由三部分组成 1、具体哪一行代码抛出的异常 2、异常的种类 NameError:变量名没有定义过 IndexError:索引不存在 l=[11,22] l[100] KeyError

chongaiyatou的博客 165

Python爬虫实战:使用最新技术爬取路透社新闻数据

网络爬虫(Web Crawler)是一种自动获取网页内容的程序,是搜索引擎的重要组成部分。随着大数据和人工智能技术的发展,爬虫技术在数据采集、市场分析、舆情监控等领域发挥着越来越重要的作用。requests:同步HTTP请求库aiohttp:异步HTTP请求库:HTML解析库lxml:高效的HTML/XML解析库selenium:浏览器自动化工具playwright:现代浏览器自动化工具pandas:数据处理和分析库scrapy:专业的爬虫框架:生成随机User-Agentredis:缓存和分布式爬虫支持。

2201_76125261的博客 1204

python异常处理关键字_[python]python的异常处理

异常处理:首先了解异常,程序出现逻辑错误或者用户输入不合法都会引发异常,而这些异常并不是致命的所以不会导致程序崩溃死掉。可以利用Python提供的异常处理机制在异常出现时及时捕获,并从内部自我消化。接下来一个例子来说明异常:1 file_name=input('请输入要打开的文件名:')2 f=open(file_name,'r')3 print('文件内容:')4 for each_line i...

weixin_39804059的博客 428

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

python中抛出异常的关键字_[python]python的异常处理

异常处理:首先了解异常,程序出现逻辑错误或者用户输入不合法都会引发异常,而这些异常并不是致命的所以不会导致程序崩溃死掉。可以利用Python提供的异常处理机制在异常出现时及时捕获,并从内部自我消化。接下来一个例子来说明异常:1 file_name=input('请输入要打开的文件名:')2 f=open(file_name,'r')3 print('文件内容:')4 for each_line i...

weixin_42596011的博客 1380

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

CS50P / Python 笔记(四):Exceptions 异常处理

ValueErrorNameErrortryexceptelsepassraise当程序无法按照正常路径执行时,我们应该如何设计一条合理的“异常路径”。输入 / 操作↓尝试执行/ \成功 失败↓ ↓正常逻辑 Exception↓能否处理?/ \Yes No↓ ↓恢复程序 程序终止所以异常处理真正解决的不是:“怎样不让 Python 报错?哪些错误是程序可以预期并恢复的,以及发生这些错误时程序应该采取什么行为。

HYF_TW的博客 32

python异常处理机制_python的异常处理

0.异常处理异常指的是程序运行中出现的各种错误,会导致程序中断执行。异常处理则是对程序可能出现的错误做一定的处理,以保证程序的正常运行。1.Python中的异常处理机制python内置了一系列的异常类,这些类中包括了通常可能出现的各种异常情况,在使用的时候,就可以直接调用这个类,来获取异常。(内置异常继承自exception类,自定义异常也可以继承内置的类或者直接继承exception来生成新的类...

weixin_39868248的博客 97

python异常处理

1)什么叫做异常 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常。 2)异常和错误的区别 Error(错误)是系统中的错误,程序员是不能改变的和处理的,是在程序编译时出现的错误,只能通过修改程序才能修正。一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢等。对于这类错误的导致的应用程序中断,仅靠程序本身无法恢复和和预防,遇到这样...

weixin_30480651的博客 135

[python]python的异常处理

     异常处理:首先了解异常,程序出现逻辑错误或者用户输入不合法都会引发异常,而这些异常并不是致命的所以不会导致程序崩溃死掉。可以利用Python提供的异常处理机制在异常出现时及时捕获,并从内部自我消化。   接下来一个例子来说明异常: 1 file_name=input('请输入要打开的文件名:') 2 f=open(file_name,'r') 3 print('文...

weixin_43847567的博客 292

【Python】学习笔记7-异常处理try。。except .. as e ....else

1、捕捉异常需要进入trackback包 import traceback def clac(a,b): return a/b 2、单独捕捉异常try ....except...else ,捕捉所有异常Exception def main(): money = input("输入多少钱:") months = input("还...

weixin_30270561的博客 554

python 中 try catch finally语句中含有return语句的执行情况

无论是在try还是在except中,遇到return时,只要设定了finally语句,就会中断当前的return语句,跳转到finally中执行,如果finally中遇到return语句,就直接返回,不再跳转回try/excpet中被中断的return语句 捕获异常后再次抛出异常: 捕获后再抛出,会被调用他的上一级再次捕获 1 def a(): 2 try: ...

weixin_30498921的博客 379

Python try/except/finally

举例说明一下try/except/finally的用法。 若不使用try/except/finally 1 x = 'abc' 2 def fetcher(obj, index): 3 return obj[index] 4 5 fetcher(x, 4) 输出: File "test.py", line 6, in <module> ...

weixin_30455661的博客 123

python的异常处理

0.异常处理   异常指的是程序运行中出现的各种错误,会导致程序中断执行。   异常处理则是对程序可能出现的错误做一定的处理,以保证程序的正常运行。 1.Python中的异常处理机制   python内置了一系列的异常类,这些类中包括了通常可能出现的各种异常情况,在使用的时候,就可以直接调用这个类,来获取异常。(内置异常继承自exception类,自定义异常也可以继承内置的类或者直接继承e...

weixin_30364325的博客 106

本地化部署 DeepSeek,构建单细胞与空间转录组 AI 分析平台

本地化部署 DeepSeek,构建单细胞与空间转录组 AI 分析平台

weixin_53637133的博客 181
上一篇: P叔带你学Python-21-包管理器PIP
下一篇: P叔带你学Python-23-命令行输入input()
Python_P叔
博客等级 码龄3年 5454粉丝 827原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值