python异常处理

【Python】Python 异常处理 文章目录什么是异常?Python 异常处理如何获取异常的相关信息?try … excepet …举个栗子????try … excepet … else …举个栗子????try … finally …举个栗子????try … excepet … finally …举个栗子????try … excepet … else … finally …举个栗子????附录:Python 标准异常 什么是异常? 异常即一个事件,该事件会在程序执行过程中发生,中断程序运行;一般情况下,当 Python 无法正常处理程 阅读详情

1. try 语句

try:
    可能发生异常的语句块
except 错误类型1 [as 变量名1]:
    异常处理语句块1
except 错误类型2 [as 变量名2]:
    异常处理语句块2
...
except 错误类型n [as 变量名n]:
    异常处理语句块n
except:
    异常处理语句块other
else:
    未发生异常的语句
finally:
    最终的处理语句
  • 作用

    尝试捕获异常,得到异常通知,将程序由异常状态变为正常状态

  • 说明

    • except 子句可以有 1个或多个

  • except: 不给错误类型,可以匹配全部的错误类型

  • else 子句在没有错误发生时执行,当处于异常时不执行

  • finally 子句里的语句,无论何时都执行

x = int(input("请输入一个整数:"))
print('x=', x)
print("后续代码") #当x输入不是int类型,会报错,后续代码不执行


try:
    x = int(input("请输入一个整数:"))
    print('x=', x)
except ValueError:
    print('您的输入不能转成整数')

print("程序结束")#当x输入不是int类型,不会报错,后续代码继续执行,不受报错影响

2. raise 语句

# 写一个函数, get_score 函数,读取用户输入的整数成绩, 
# 成绩的正常值是0~100 之间, 要求, 如果不在0~100 之间
# 报 ValueError类型的错误
def get_score():
    x = int(input('请输入成绩:'))
    if 0 <= x <= 100:
        return x
    raise ValueError

作用:

  • 抛出一个错误,让程序进入异常状态

  • 发送错误通知给调用者

语法:

raise 异常类型
或
raise 异常对象

# 写一个函数, get_score 函数,读取用户输入的整数成绩,
# 成绩的正常值是0~100 之间, 
# 如果不在0~100之间报ValueError类型的错误
def get_score():
    x = int(input('请输入成绩:'))
    if 0 <= x <= 100:
        return x
    # raise ValueError
    raise ValueError('用户输入的成绩不在 0~100 之间')


try:
    score = get_score()
    print(score)
except ValueError as err:
    print("成绩输入有误 err=", err)

写一个函数 get_age() 用来获取一个人的年龄信息
    此函数规定用户只能输入1~140之间的整数,如果用户输入其它的数则直接触发ValueError类型的错误!

def get_age():
    def get_age():
    age = int(input('请输入: '))
    if age < 0 or age > 140:
        raise ValueError("年龄范围错误")
    return age
try:
    age = get_age()
    print("用户输入的年龄是:", age)
except ValueError as err:
    print("用户输入的不是1~140的整数,获取年龄失败!")

3. 错误类型

错误类型说明
ZeroDivisionError除(或取模)零 (所有数据类型)
ValueError传入无效的参数
AssertionError断言语句失败
StopIteration迭代器没有更多的值
IndexError序列中没有此索引(index)
IndentationError缩进错误
OSError输入/输出操作失败
ImportError导入模块/对象失败
NameError未声明/初始化对象 (没有属性)
AttributeError对象没有这个属性
<!-- 以下不常用 -->
GeneratorExit生成器(generator)发生异常来通知退出
TypeError对类型无效的操作
KeyboardInterrupt用户中断执行(通常是输入^C)
OverflowError数值运算超出最大限制
FloatingPointError浮点计算错误
BaseException所有异常的基类
SystemExit解释器请求退出
Exception常规错误的基类
StandardError所有的内建标准异常的基类
ArithmeticError所有数值计算错误的基类
EOFError没有内建输入,到达EOF 标记
EnvironmentError操作系统错误的基类
WindowsError系统调用失败
LookupError无效数据查询的基类
KeyError映射中没有这个键
MemoryError内存溢出错误(对于Python 解释器不是致命的)
UnboundLocalError访问未初始化的本地变量
ReferenceError弱引用(Weak reference)试图访问已经垃圾回收了的对象
RuntimeError一般的运行时错误
NotImplementedError尚未实现的方法
SyntaxError Python语法错误
TabErrorTab 和空格混用
SystemError一般的解释器系统错误
UnicodeErrorUnicode 相关的错误
UnicodeDecodeErrorUnicode 解码时的错误
UnicodeEncodeErrorUnicode 编码时错误
UnicodeTranslateErrorUnicode 转换时错误
以下为警告类型
Warning警告的基类
DeprecationWarning关于被弃用的特征的警告
FutureWarning关于构造将来语义会有改变的警告
OverflowWarning旧的关于自动提升为长整型(long)的警告
PendingDeprecationWarning关于特性将会被废弃的警告
RuntimeWarning可疑的运行时行为(runtime behavior)的警告
SyntaxWarning可疑的语法的警告
UserWarning用户代码生成的警告
Python中异常处理小测验 阅读详情

相关推荐

【Python 基础篇】Python 异常处理

在Python中,异常是指在程序执行过程中出现的错误情况,它打断了程序的正常流程。Python使用异常对象来表示异常情况,并提供了一套机制来捕获和处理这些异常。当异常发生时,程序将会抛出(raise)异常对象,并尝试查找能够处理该异常的代码块。异常处理是编写健壮程序的重要组成部分,通过合理的异常处理可以提高程序的稳定性和可靠性。本文介绍了Python中异常的概念、常见的内置异常、异常处理语句和异常捕获和处理的方法,并通过一个实例演示了异常处理的过程。

繁依Fanyi的博客 883

Python程序异常处理

异常就是程序运行时发生错误的信号,在程序由于某些原因出现错误的时候,若程序没有处理它,则会抛出异常,程序也的运行也会随之终止;1.程序终止,无法运行下去;2…如果程序是面向客户,那么会使客户的体验感很差,进而影响业务;当处理不确定因素时,比如有用户参与,有外界数据传入时,都容易出现异常;1.由于语法错误导致程序出现异常,这种错误,根本过不了Python解释器的语法检查,必须在程序执行前就改正;

Python编程学习的博客 6458

【笔记6】SP3485自动收发电路设计分析

则TXD路为1,MOS管导通,2/3引脚为0,芯片实际上事与愿违的进入了接收模式。但是,由于我们采用单根双绞线与上位机通信,在数据发出去前数据线上没有任何信号传输,所以AB处于高阻态,进而受到R1下拉与R2上拉的影响,差分信号为1,所以输出1;此外,RXD内路也被上拉,485总线B端上拉,A端下拉。此时TXD由于没有数据传输,所以一直处于1的状态,因而MOS管导通,2/3引脚为0,芯片处于正常接收状态。总而言之就是,RE#与 DE只能有一个是1,1代表微控制器向外发送,0代表微控制器接收。

Haytham233的博客 3146

Python基础之异常处理

发现有些东西长时间不用就要忘了,坚持每天复习总结一个`小知识点`吧~

车手只需要车和手,压力来自轮胎 8496

Unity3D实战:5分钟搞定RTSP监控视频播放(附完整代码)

本文提供了一套在Unity3D中快速集成RTSP监控视频播放的实战方案。通过采用LibVLCSharp for Unity这一成熟稳定的跨平台中间件,开发者可以轻松实现RTSP流的解码与渲染,并附有完整的C#代码示例,帮助用户在5分钟内完成集成,适用于智慧园区、安防监控等3D可视化场景。

weixin_29001655的博客 192

LED单元板驱动(HUB75接口)

开始之前先吐槽一下,搜这个的资料。要么都是Arduino,要么单片机的收费。小小的一个LED单元板,凭什么? 用Arduino是你速度快还是我ST,树莓派不好用?收费更离谱,这点东西还藏私?给你个中指凸。把原理都写出来看你怎么收费。 一、接口定义及原理 如图,有两个RGB通道,共占用6个IO。剩下的ABCDE为地址通道,LAT为行数据锁存通道,CLK为数据时钟,OE为低电平使能LED显示。图片这里没有E,证明它是16扫的,有E就会把B上面的地改为E。这样就是5位,2的5次方32扫。1.

a3748622的博客 3万+

Python异常处理

1. try…except结构 异常处理结构中最常见也最基本的结构。其中try子句中的代码块包含可能出现的语句,而except子句用来不做相应的异常,except子句中的代码块用来处理异常。如果try中的代码块没有出现异常,则继续往下执行异常处理结构后面的代码;如果出现异常并且被except子句捕获,则执行except子句中的异常处理代码;如果出现异常单没有被except捕获,则继续往外层抛出;如...

weixin_43967584的博客 1万+

基于机器学习的网络入侵检测系统设计与实现

本文设计并实现了一个基于机器学习的网络入侵检测系统,采用随机森林模型结合KMM算法优化,使用CICIDS2017数据集进行训练。系统包含完整的数据预处理流程、特征工程、模型调优和远程部署方案。实验结果表明,该系统能有效识别多种网络攻击类型,在检测准确率和误报率方面表现优异。研究为网络安全防护提供了新的技术思路和实用工具,具有重要的应用价值。

huanghm88的专栏 318

Python异常处理机制

异常处理机制,合理使用异常处理能使程序更稳定可靠,建议遵循"具体异常优先捕获"原则,配合日志记录完善错误处理机制。

etdchh55的博客 2265

Arcgis模型构建器01——写一个简单的模型

在使用模型构建器解决这个需求之前,我们要想清楚如果我们手动解决的话,应该如何去处理,因为构建模型的过程正是基于我们手动处理的过程来构建的。我有一个全国的dem影像数据和一个陕西省边界范围矢量,现在我想获取陕西省的dem影像的坡度数据。填写完之后点击确定,我们发现,两个输入数据和工具连接起来了,并且通过裁剪工具得到一个中间结果,即。我们发现工具框和中间数据框都存在阴影,说明已经运行过了这个模型,不报错就说明模型运行成功!现在我们就把数据和工具都串联起来了,成功构建好了模型。

爱吃雪糕的小布丁的博客 918

[Python图像处理] 一.图像处理基础知识及OpenCV入门函数

该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。希望文章对您有所帮助,如果有不足之处,还请海涵~ 同时推荐作者的C++图像系列知识: [数字图像处理] 一.MFC详解显示BMP格式图片 [数字图像处理] 二.MFC单文档分割窗...

杨秀璋的专栏 7万+

Python:异常处理

Python:异常处理

m0_70882914的博客 3334

LangGraph教程8:LangGraph流式处理

流式处理可显著提升基于LLM应用的响应性。LangGraph支持两种流式模式:values模式返回每一步的完整结果,适合需要完整上下文处理的场景;updates模式仅返回增量变化,适用于实时更新需求。示例代码展示了如何用create_react_agent实现这两种模式,其中values模式完整记录处理流程,updates模式逐步输出结果。通过异步迭代输出流,开发者可以灵活选择适合应用场景的流式处理方式。

Cachel Wood的博客 620

python异常处理例题_Python 异常处理

Python 异常处理python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。异常处理断言(Assertions)python标准异常异常名称描述BaseException所有异常的基类SystemExit解释器请求退出KeyboardInterrupt用户中断执行(通常是输入^C)Exception常规错误的基类StopIter...

weixin_39995297的博客 538

AI智能体在零售行业的5大变革性应用

本文旨在全面介绍AI智能体在零售行业的关键应用场景,分析其技术原理和商业价值,帮助读者理解这些技术如何改变传统零售模式。文章将从核心概念入手,逐步深入五大应用场景的技术实现,最后探讨未来趋势和挑战。AI智能体:能够感知环境、做出决策并执行行动的智能软件实体机器学习:让计算机从数据中学习模式而无需显式编程的技术深度学习:基于神经网络的机器学习方法,能够处理复杂模式识别核心概念回顾AI智能体是零售数字化转型的关键驱动力从推荐系统到库存管理,AI正在重塑每个零售环节。

AI 原生应用开发的博客 1352

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

python 异常处理

一)捕获异常格式一:try:    except :    except :    else:           如果没有异常,则执行else块中的语句    格式二:try:    finally:    不管try语句块中是否发生异常,都将执行finally语句块。>>> l = [1,2,3]>>> l[5]Trace

张国鹏的专栏 4093

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Python异常处理是什么?python怎么进行异常处理

大家在编写python代码运行后或者直接执行一个py源码,有时候会遇到出现错误整个程序直接停止下来的问题。那么如何让python程序在运行时会提示错误但不直接报错呢,这就要用到python的异常处理机制了。下文就将详细介绍python异常处理是什么和它的用法。

m0_59236602的博客 689

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

简述python的异常处理机制_python的中异常处理机制

什么是异常处理定义:异常处理就是我们在写python时,经常看到的报错信息,例如;nameerror typeerror valueerror等,这些都是异常。异常是一个事件,改事件会在程序执行过程中发生,影响程序的正常执行,一般情况下,在python中无法处理程序时就会发生异常,异常时python的一个对象,表示一个错误,当python脚本发生异常时,我们需要捕获并处理异常,否则程序就会终止执行...

weixin_39613561的博客 609

Python 异常处理完全指南

Python 异常处理

YAnt的博客 2361

python异常处理的作用_python之异常处理

一、异常处理的作用python异常处理的用处是针对抛出的异常进行处理使程序后面的代码正常运行(调试代码、或者针对不影响整体运行、不可控的异常出现导致的程序运行)1、语法导致的异常:应该在程序运行前进行处理2、逻辑上的异常:try。。。。。exceptAttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性xIOError 输入/输出异常;基本上是无法打开文件Im...

weixin_39929253的博客 685

python 异常处理 实例_Python异常处理实例讲解及分析

异常处理在项目开发中,异常处理是不可或缺的。异常处理帮助人们debug,通过更加丰富的信息,让人们更容易找到bug的所在。异常处理还可以提高程序的容错性。我们之前在讲循环对象的时候,曾提到一个StopIteration的异常,该异常是在循环对象穷尽所有元素时的报错。我们以它为例,来说明基本的异常处理。一个包含异常的程序:re = iter(range(5))for i in range(100):...

weixin_36139228的博客 905

python中异常处理结构_python之异常处理

三、异常处理1、异常基础在编程过程中为了增加友好性,在程序出现bug时一般不会将错误信息显示给用户,而是现实一个提示的页面,通俗来说就是不让用户看见大黄页!!!需求:将用户输入的两个数字相加while True:num1 = raw_input('num1:')num2 = raw_input('num2:')try:num1 = int(num1)num2 = int(num2)result =...

weixin_39649965的博客 490

Python异常处理:12个异常处理技巧,你掌握了几个?

在Python异常处理中,`try-except`块是最基础也是最核心的构造,它允许开发者优雅地应对程序运行时可能遇到的错误情况。通过合理地使用这一机制,可以增强代码的健壮性,提升用户体验。

m0_75067840的博客 1408

python异常处理_Python 异常处理

异常与错误程序错误分类(两类)语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)逻辑错误(逻辑错误)#用户输入不完整(比如输入为空)或者输入非法(输入不是数字) 什么是异常 异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下Python中异常种类 在python中不同的异常可以用不同的类型(python中统一了类与类...

weixin_39975055的博客 113

python异常处理的方法_Python异常处理详解

异常处理也是现代编程语言的基本特性,使用异常处理可以将正常分支和异常分支分割开来,而不像 C 语言那样,正常分支和异常分支是混在一起的。在 Python 中,异常就是一个特殊的对象,通过该异常对象可以给异常处理函数传递异常发生时的信息。Python 2 和 Python 3 中异常处理的语法稍有不同,但内部实现机制是一样的。本节以 Python 3 为例介绍异常处理的方法。多数情况下,我们自己的代...

weixin_39700625的博客 275

python异常处理的作用_Python异常处理

一,异常和错误part1:程序中难免出现错误,而错误分成两种1.语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)#语法错误示范一if#语法错误示范二def test:pass#语法错误示范三print(haha2.逻辑错误(逻辑错误)#用户输入不完整(比如输入为空)或者输入非法(输入不是数字)num=input(">>: ")int(num)#无法完...

weixin_39892447的博客 295
上一篇: 迭代器和生成器
下一篇: python包和模块
M-YM
博客等级 码龄4年 173粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值