处理异常tryexcept

在 Python 中,tryexcept 语句用于处理异常(错误)。通过使用这两个关键字,你可以编写代码来捕获和处理可能发生的异常,以保持程序的稳定性。

try:
try 代码
except 错误1 as 变量1:
except1代码
except 错误2 as 变量2:
except2代码
except 错误3 as 变量3:
except3代码
else:
没有异常发生时执行的代码
finally:
始终会执行的代码
  • try 块包含可能引发异常的代码。如果发生异常,程序将跳转到 except 块,执行异常处理代码。
  • except 块可以存在多个,你可以使用多个 except 块来处理不同类型的异常:except块会进行判断,如果符合其中某个except块的错误模式,则执行某个except块下的内容
  • 为了把所有的异常都接到,通常会使用except Exception as e:来收尾(因为所有的异常,都是Exception),你可以使用变量(例如 e)来获取异常对象的信息,并可以返回输出。
  • else 块中的代码将在 try 块中的代码没有引发异常时执行。
  • finally 块中的代码始终都会执行,无论是否发生异常。
try:
# 代码块,可能引发异常的地方
result = 10 / 0 # 除数不能为0
open("hehehehehehehe", mode="r").read() # 不存在的文件
lst = [] # 空列表不能被迭代
lst.__iter__().__next__() except ZeroDivisionError:
# 处理除以零的异常
print('除数不能为0!') except Exception as e:
# 异常处理块,处理发生的异常
print(f'有异常发生: {e}') else:
# 没有异常发生时执行的代码
print(f'计算结果为: {result}') finally:
# 始终会执行的代码
print("执行完记得关闭数据库!!!")

抛出异常raise

raise Exception 让程序主动抛出异常,比简单的print()的提示强硬很多

def func(a, b):
if type(a) == int and type(b) == int:
return a + b
else:
# 程序会主动抛出异常,谁调用该函数,谁接收该异常
raise Exception("你提交的不是int类型,func行数如法进行计算") # print("a和b必须为数字") func("呵呵", 3)
  • 谁调用该函数,谁接收该异常
  • 架构师经常会做主动抛出异常的操作,会对项目有较强的掌控力。

Python——第五章:处理异常try、except、else、finally的更多相关文章

  1. Python第五章__模块介绍,常用内置模块

    Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群  群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...

  2. 简学Python第五章__模块介绍,常用内置模块

    Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群  群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...

  3. “全栈2019”Java异常第十五章:异常链详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  4. Python第五章实验报告

    一.实验项目名称:<零基础学Python>第五章实战.实例以及两道作业题 二.实验目的和要求:了解和掌握操作字符串的方法和正则表达式的应用 三.实验环境:IDLE(Python 3.9 6 ...

  5. Python第五章-内置数据结构05-集合

    Python内置数据结构 五.集合(set) python 还提供了另外一种数据类型:set. set用于包含一组无序的不重复对象.所以set中的元素有点像dict的key.这是set与 list的最 ...

  6. Python第五章-内置数据结构01-字符串

    Python 内置的数据结构 ​ 到目前为止,我们如果想保存一些数据,只能通过变量.但是如果遇到较多的数据要保存,这个时候时候用变量就变的不太现实. ​ 我们需要能够保存大量数据的类似变量的东东,这种 ...

  7. 流畅的python第五章一等函数学习记录

    在python中,函数是一等对象,一等对象是满足以下条件的程序实体 1在运行时创建 2能复制给变量或数据结构的元素 3能作为参数传给函数 4能作为函数的返回结果 高阶函数(接受函数作为参数或者把函数作 ...

  8. Python第五章-内置数据结构04-字典

    Python 内置的数据结构 四.字典(dict) 字典也是 python 提供给我们的又一个非常重要且有用的数据结构. 字典在别的语言中有时叫关联数组.关联内存.Map等. 字典中存储的是一系列的k ...

  9. Python第五章-内置数据结构03-元组

    Python 内置的数据结构 三.元组(tuple) python 作为一个发展中的语言,也提供了其他的一些数据类型. tuple也是 python 中一个标准的序列类型. 他的一些操作和str和li ...

  10. Python第五章-内置数据结构02-列表

    Python 内置的数据结构 二.列表(list) 想一想: 前面学习的字符串可以用来存储一串信息,那么想一想,怎样存储咱们班所有同学的名字呢? 定义100个变量,每个变量存放一个学生的姓名可行吗?有 ...

随机推荐

  1. 2015-CS

    2015-CS 数据库部分 create table [EMPLOYEE]( [EmpNo] varchar(10) not null primary key, [EmpName] varchar(1 ...

  2. SQL Server用户的设置与授权

    SQL Server用户的设置与授权 SSMS 登陆方式有两种,一是直接使用Windows身份验证,二是SQL Server身份验证.使用SQL Server用户设置与授权不仅可以将不同的数据库开放给 ...

  3. 485modbus转profinet网关连接威纶通与三菱变频器modbus通讯

    485modbus转profinet网关连三菱变频器modbus通讯触摸屏监控 本案例介绍了如何通过485modbus转profinet网关连接威纶通与三菱变频器进行modbus通讯.485modbu ...

  4. Linux中python更换pip源

    Linux中python更换pip源 执行以下命令,更换为阿里源: echo " [global] trusted-host = mirrors.aliyun.com index-url = ...

  5. CalledFromWrongThreadException

    更新UI的位置不正确,线程解析数据    handler. mssage 中更新 android.view.ViewRootImpl$CalledFromWrongThreadException: O ...

  6. 低代码助力微信小程序对接,提升开发效率

    摘要:本文由葡萄城技术团队原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 微信小程序相信大家都用过,相较于APP,微信小程序的优势在于其便 ...

  7. 【接口测试】如何在 Eolink Apilkit 中使用 cookie ?

    什么是 Cookie ? Cookie是一种在网站之间传递的小型文本文件,用于存储用户的个人信息和偏好设置.当您访问一个网站时,网站会将Cookie存储在您的浏览器中,并在您下次访问该网站时读取该Co ...

  8. node(1)

    1.新建http.js //node搭建http服务器 let http=require('http'); //使用http建立服务请求 http.createServer(function(requ ...

  9. 手算base64

    base64人类群星闪耀时 CSP2021考了-- 什么鬼-- 不得不大骂一声--您有毒吧 base64是什么 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基 ...

  10. PTA乙级1049

    不能直接两重循环数据是1e5会超时 这样 #include"bitsdc++.h" using namespace std; const int N=1e5+10; double ...