百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

Python中的异常处理(python异常处理过程可以概括为三个步骤)

toyiye 2024-07-09 22:44 11 浏览 0 评论

# 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行,也是程序运行过程中,产生的各种各样的错误

# 有的错误是程序编写有问题造成的,有的错误是用户非常规输入造成的

# 还有一些错误是程序运行过程中偶发的,如网络请求过程中断网了、磁盘满了等等

# 上面出现的这些所有的错误导致程序没有按照预期执行,这些原因被统称为异常

# 一般情况下,在Python无法正常处理程序时就会发生一个异常

# 异常处理

# Python中捕捉异常使用try/except语句

# 语法

# try:

# 代码块

# except:

# 发生异常后执行的代码块

# try/except更多写法

# except后跟异常名称Exception1,Exception2,表示只捕获这两种异常

# except后未跟异常名称,表示捕获所有的异常

# as e1表示给想要捕获的异常Exception2起别名

# try:

# 代码块

# except Exception1:

# 上方异常处理

# except Exception2 as e1:

# e1异常处理

# 使用一个except捕获多个异常

# try:

# 代码块

# except(Exception1,Exception2,.....ExceptionN):

# 异常处理

# try-else语句 else后跟没有异常发生执行的代码块

# try:

# 代码块

# except:

# 异常处理代码块

# else:

# 代码块

# try-finally语句 无论是否发生异常都将执行finally后的代码

# try:

# 代码块

# except:

# 异常处理代码块

# finally:

# 代码块


# 实例

def first(a,b):

c = a / b

return c

# 传入正常值

# result = first(4,2)

# print(result)

# 传入错误值,b 分母不能为0

# result =first (4,0)

# print(result)


# 使用异常处理机制,将可能出现异常的代码放入到try中

def second(a1,b1):

try:

c1 = a1 / b1

except:

return "b1不能为0"

return c1


# 传入错误

result1 = second(4,0)

print(result1)


# 只捕获想要的异常ZeroDivisionError

def third(a2,b2):

try:

c2 = a2 / b2

except ZeroDivisionError:

return "代码异常"

return c2


# 传入错误分母

result1 = third(4,0)

print(result1)


# 捕获多个想要的异常

def fourth(a3,b3):

try:

name = a3.name

c3 = a3 / b3

except ZeroDivisionError:

return "b3不能为0"

except AttributeError:

return "b3无name属性"

return c3


# 传入错误,a3无name属性

result1 = fourth(4,0)

print(result1)


# 输出捕获的异常, as给异常起别名

def fifth(a4,b4):

try:

name = b4.name

c4 = a4 / b4

except ZeroDivisionError:

return "代码异常"

except AttributeError as ab:

print(ab)

return "b3无name属性"

return c4


# 传入错误

result1 = fifth(4,0)

print(result1)


# else,try中代码无异常则执行else后的语句

def sixth(a5,b5):

try:

c5 = a5 / b5

except ZeroDivisionError:

return "代码异常"

else:

print('未出现异常')

return c5


# 传入错误

result1 = sixth(4,3)

print(result1)


# finally无论是否出现异常,都执行finally后的语句,通常用来释放资源

# 正常实例

d = 12

e = 3

try:

f = d/e

except:

print("异常产生")

finally:

print("总会执行")


# 异常实例

d1 = 12

e1 = 0

try:

f1 = d1/e1

except:

print('异常产生')

finally:

print('一直执行')


# 主动抛出异常

# 异常崩溃的原因:代码不够健壮

# 异常产生的原因:代码抛出来的

# 抛出异常使用函数:raise,assert两种

# raise [Exception [, args [, traceback]]],语句中 Exception 是异常的类型(例如,NameError)参数标准异常中任一种,args 是自已提供的异常参数。

# 最后一个参数traceback是可选的(在实践中很少使用),如果存在,是跟踪异常对象。


# def seventh(x):

# assert x != 0, "a不能为0"

# print(x)

# seventh(0)


# def eighth(n):

# if n == 0:

# raise AssertionError("n不能为0")

# print(n)

#

# eighth(0)

相关推荐

「2022 年」崔庆才 Python3 爬虫教程 - 代理的使用方法

前面我们介绍了多种请求库,如urllib、requests、Selenium、Playwright等用法,但是没有统一梳理代理的设置方法,本节我们来针对这些库来梳理下代理的设置方法。1.准备工作...

Python 3 基础教程 - 函数(python基础函数大全)

函数是一组有组织的、可重用的代码,用于执行单个相关操作。函数为应用程序提供更好的模块化和高度的代码重用。Python提供了许多内置函数,如print()等。也可以创建自己的函数。这些函数称为用户...

Python3.7.4图文安装教程(python3.7详细安装教程)

Python更新的很快,一转眼Python2已经过时了,本文为大家详细说明Python最新版本3.7.4的安装过程,跟着步骤一步一步操作,轻松搞定安装。没有软件可以关注我头条私信我1、下载好后是一个压...

非程序员的其他从业者,三天可入门Python编程,附教程与相应工具

这是一种应用十分广泛的编程语言Python,它打破了只有程序员才能编程的“戒律”,尤其是近年来国家予以Python编程的支持,让这门语言几乎应用到各种工作中。那么对于并不是职业程序员的人,该如何才能快...

008 - 匿名函数lambda-python3-cookbook中文教程

有名函数通过def来定义有一个有名字的函数。defmyfun():return1,2,3...

花了3万多买的python教程全套,现在分享给大家(python全栈)

花了3万多买的Python教程全套,现在分享给大家(Python全栈)文末惊喜记得看完哦。...

花来3万多买的python教程全套,现在分享给大家(python全栈)

花了3万多买的Python教程全套,现在分享给大家(Python全栈)文末惊喜记得看完哦。...

Python3最新版安装教程(Windows)(python3.7.0安装教程win10)

接下来给大家讲解一下python最新安装包的安装教程。·首先大家可以去这里搜索一下我的笔记,大概讲了一下,然后找到它的官网,下载的是windows,可以看一下最新的版本。·选择64位,点击下载就即可了...

笨办法学python3》再笨的人都能学会python,附PDF,拿走不谢

《笨办法学python3》这本书的最终目标是让你起步python编程,虽然说是用“笨办法”学习写程序,但是其实并不是这样的。所谓的“笨办法”就是指这本书的教学方式,也就是“指令式”的教学,在这个过程中...

python3 (1)(python312)

Python3Introduction:LearnthebasicsofPython3programming,withitskeyfeatures,andprovideyo...

Python3 教程-- 3、解释器(python3菜鸟教程官网)

Python3解释器Python解释器Linux/Unix的系统上,Python解释器通常被安装在/usr/local/bin/python3.4这样的有效路径(目录)里。我们可以将路径/us...

《笨办法学python3》再笨的人都能学会python,附PDF,拿走不谢

《笨办法学python3》这本书的最终目标是让你起步python编程,虽然说是用“笨办法”学习写程序,但是其实并不是这样的。所谓的“笨办法”就是指这本书的教学方式,也就是“指令式”的教学,在这个过程中...

入门经典!《Python 3程序开发指南》python学习教程赠送!

《Python3程序开发指南》(????)??嗨!你们的小可爱又来辣,小编自学python时用到的视频学习教程分享给大家~都是非常系统性、非常详细的教程哦,希望能帮助到你!转发文章+私信小编“资料”...

Python3.7最新安装教程,一看就会

一、博主自言随着人工智能的快速发展,python语言越来越受大家的欢迎,博主前段时间先自学了一次,这次再次巩固,顺便分享给大家我遇到的坑。帮助大家学习的时候少走弯路。希望会对大家有所帮助,欢迎留言...

# Python 3 # Python 3 教程(#python3.10教程)

Python3教程Python的3.0版本,常被称为Python3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python3....

取消回复欢迎 发表评论:

请填写验证码