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

基于Android13的系统启动流程分析(三)之FirstStageMain阶段

init进程是Android系统中用户空间的第一个进程,作为第一个进程,它被赋予了很多极其重要的工作职责,比如创建zygote(孵化器)和属性服务等。init进程是由多个源文件共同组成的,这些文件位于源码目录system/core/init1. Bootloader 引导当按下设备电源键时,最先运行的就是 bootloader(固化在ROM的程序),bootloader 的主要作用就是硬件设备(如 CPU、flash、内存)的初始化并加载到RAM,通过建立内存空间映射,为装载 Linux 内核做好准备,。

q1210249579的博客 5496

Python基础之异常处理

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

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

实战篇(一):从零构建领域知识图谱——基于Protege的本体建模与知识表示

本文详细介绍了如何从零构建领域知识图谱,重点讲解了基于Protege的本体建模与知识表示方法。通过游戏和电影领域的实战案例,展示了类层次结构设计、属性关系定义、推理验证等关键步骤,帮助读者掌握知识图谱构建的核心技术。

weixin_42613501的博客 482

LTspice基础教程-024.参数扫描;step指令用法

step指令用于参数扫描,扫描步骤可以是线性的,对数的或列表。 下面介绍几种常用用法: 绘制一简单电阻分压电路,如下: 线性扫描 语法:.step param <Name> <Start Value> <Stop Value> <Increment> 例:.step param Res 20 100 20 意思是R2的阻值从20变化到100,...

gaoyong_wang的博客 3万+

Python异常处理

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

weixin_43967584的博客 1万+

F28335 DSP ePWM模块实战:从基础配置到电机控制

本文详细解析了TI TMS320F28335 DSP的ePWM模块,从基础概念、寄存器配置到实战应用。通过代码示例,手把手教你如何配置定时中断、生成PWM波形、实现死区保护与故障联防,并最终完成一个可调速、可换向的直流电机控制项目,是掌握F28335电机控制核心技术的实战指南。

g5h6i的博客 1128

Python异常处理机制

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

etdchh55的博客 2265

Ubuntu16.04下禁用scp、sftp和winscp

在上一篇博文《Ubuntu16.04 搭建FTP服务器,设置用户权限为只许上传、禁止下载和删除》中,我讲述了Ubuntu16.04下配置FTP,并且设定用户权限为只能上传数据,禁止下载和删除数据。这算在FTP层面封堵了服务器数据泄露的途径。 但是,Ubuntu系统的scp和sftp还是起作用的,理论上只要能用本地机器ping通服务器,就可以用scp和sftp下载数据,这还是存在数据泄露可能的,所...

HPC&Geophysics攻城狮 5737

【动态导通电阻】p-GaN HEMTs正向和反向导通下的动态导通电阻

2024年,浙江大学的研究团队通过多组双脉冲测试方法,深入研究了两种商用p-GaN栅极HEMTs在正向和反向导通模式下的动态导通电阻(RON)特性。研究发现,肖特基型p-GaN栅极HEMTs在反向导通时动态RON比正向导通高3%-5%,而混合漏极嵌入栅注入晶体管在反向导通时动态RON降级较轻,降低约10%。此外,随着漏极电流(IDS)的增加,两种器件在反向导通时动态RON先减小后增加,形成“谷底”现象。

荷塘阅色 827

Python:异常处理

Python:异常处理

m0_70882914的博客 3334

Python爬招聘网站:Selenium+ActionChains破解滑动验证码,批量采集岗位数据(新手可跑)

通过本文实战,你不仅学会了用Selenium+ActionChains破解滑动验证码,还掌握了爬虫的核心优化思路——“模拟人类行为”是突破反爬的关键。这套逻辑不仅适用于招聘网站,还能迁移到其他有滑动验证码的平台(如电商、资讯网站)。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1188

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

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

weixin_39995297的博客 538

Calibre :Standard Verification Rule Format(SVRF) Manual (1-2)

摘要:SVRF规则文件是用于Calibre和ICverify工具的脚本文件,包含层定义、规则检查、注释、预处理指令等元素。规则文件支持全局/局部层定义、隐式层操作,以及条件编译指令(#DEFINE/#IFDEF等)。宏功能(DMACRO/CMACRO)可实现代码复用,支持参数化层操作和嵌套调用。预处理指令支持版本控制(#IFDEFCALIBRE_VERSION)和环境变量默认值设置(#PRAGMAENV)。宏中的层名具有局部作用域,可通过特殊语法实现全局层名指定,LOCAL()修饰符可创建调用作用域内的唯一

u013620135的博客 1342

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

python 异常处理

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

张国鹏的专栏 4093

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

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

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

m0_59236602的博客 689

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

简述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、付费专栏及课程。

余额充值