首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python异常

本篇文章参考:黑马程序员一、什么是异常当检测到一个错误时,Python解释器无法继续执行程序,反而会抛出错误提示,这就是我们所称的“异常”,也就是常说的“bug”。那bug这个单词是怎么诞生的呢?"...当程序遇到无法处理的错误时,就会抛出异常,并在控制台输出相关的错误信息,包括异常类型、错误描述以及错误发生的位置。二、捕获异常为什么要捕获异常呢?...# 捕获多个异常try: 1/0except (NameError,ZeroDivisionError) as e: print("出现变量未定义或者除以0的异常") print(e)...print(name) 1/0except (NameError,ZeroDivisionError) as e: print("出现变量未定义或者除以0的异常") print...(e)输出结果:出现变量未定义或者除以0的异常name 'name' is not defined仔细观察这个输出结果,为什么输出name 'name' is not defined但是不会输出division

4111

python中常见的异常信息举例说明?

参考链接: Python中的用户定义异常 导入模块错误  输入:  import a  运行后结果为:importerror 指的是错误类型,引入错误错误说明:提示没有命名的模块  索引错误 输入:...字典键值错误  输入:  dict1={'name':'beij','age':20,'gender':'男'} print dict1['name1']  运行结果:KeyError   键值错误,字典中不存在的键...  注意:有错误发生时,程序直接断掉了,后面代码都不执行了,都无效了    命名错误 NameError  print a  运行后,提示名称未被定义  IndentationError:缩进错误  输入...,我们要学会看异常,根据异常来处理问题  都是要固定的错误格式的  调试时我们关心   什么类型的错误? ...记录并显示堆栈信息   为什么出错?      显示原因

1.1K00
您找到你想要的搜索结果了吗?
是的
没有找到

上手之Python之异常

什么是异常 当检测到一个错误时,Python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的“异常”, 也就是我们常说的BUG bug单词的诞生  早期计算机采用大量继电器工作,马克二型计算机就是这样的...f = open('linux.txt', 'r') 异常的捕获方法  为什么要捕获异常 世界上没有完美的程序,任何程序在运行的过程中,都有可能出现:异常,也就是出现bug 导致程序无法完美运行下去。...as e: print('name变量名称未定义错误') ① 如果尝试执行的代码的异常类型和要捕获的异常类型不一致,则无法捕获异常。...捕获多个异常  try: print(1/0) except (NameError, ZeroDivisionError): print('ZeroDivision错误...')..., 异常 传递到函数func02, 当func02也没有捕获处理这个异常的时候 main函数捕获这个异常,  这就是异常的传递性.

76940

【Python】已解决报错:NameError: name ‘xxx‘ is not defined

顾名思义,NameError 错误表明 Python 解释器在代码中遇到了一个它不认识的名称。 这通常发生在变量、函数或模块在被使用之前没有被正确定义或导入。...二、错误代码示例 错误一:拼写错误 # 错误示例1:拼写错误 result = unknown_variable # NameError,因为unknown_variable未定义 错误二:作用域问题...def my_function(): print(my_var) # NameError,因为my_var在函数外部未定义 错误三:导入错误 import math print(Math.PI...) # NameError,因为Math应为math 错误四:变量未定义 def calculate_sum(a, b): return a + b + c # NameError,因为c未定义...return value # NameError,因为value可能未定义 三、正确代码示例 方案一:解决作用域问题 # 正确示例 def my_function(): my_var = 5

51820

Python基础语法-函数的错误处理-常见异常类型

在Python中,可以通过异常处理机制来处理代码执行过程中出现的异常,避免程序崩溃或出现错误结果。...Python中提供了许多内置的异常类型,常见的异常类型包括:NameError当尝试访问一个未定义的变量时,抛出NameError异常。...a = b + 1 # 抛出NameError异常,b未定义TypeError当函数或操作应用于错误类型的对象时,抛出TypeError异常。...a = 1 / 0 # 抛出ZeroDivisionError异常,除数为0IndexError当尝试访问超出列表或元组索引范围的值时,抛出IndexError异常。...a = [1, 2, 3]b = a[3] # 抛出IndexError异常,超出了列表索引范围KeyError当尝试访问不存在的字典键时,抛出KeyError异常。

2.6K40

python教程(第七章)

为什么说字典是唯一一个映射类型呢?看图。 ? 映射类型区别与序列类型,序列类型以数组的形式储存,通过索引的方式来获取相应位置的值,一般索引值与对应位置数据无关系。...3, 'I': 65, 'V': 83, 'Y': 343} 这里天钧遇到了故障,进行排查发现我定义过dict TypeError:'dict' object is not callable 出现这种错误有两种可能...class 'dict'> >>> del dict Traceback (most recent call last): File "", line 1, in NameError...File "", line 1, in KeyError: 32 get() 当查询一个项 >>> dict3.get(32) >>> 在不在字典里,如果不在get返回一个...= "猫") >>> name {'米老鼠': '老鼠', '小黑': '猫', '小白': '狗', '天钧': '男人'} >>> 集合 set大家看见如果认真看了有事type返回的是set,这个就是集合

50620

什么是异常

语法错误在执行的时候就会报错,同时控制端告诉你错误所在的行; 但即便python程序语法是正确的,在运行它的时候,也有可能发生错误。...比如请求的接口返回空,没有做判断直接拿这个变量进行下一步逻辑处理,就会出现代码异常。...ZeroDivisionError: division by zero >>> 4 + spam*3 # spam 未定义,触发异常 Traceback (most recent...断言语句失败 AttributeError 对象没有这个属性 EOFError 没有内建输入,到达EOF 标记 EnvironmentError 操作系统错误的基类 IOError 输入/输出操作失败...) KeyError 映射中没有这个键 MemoryError 内存溢出错误(对于Python 解释器不是致命的) NameError 未声明/初始化对象 (没有属性) UnboundLocalError

1.1K40

【从零学习python 】22. Python中的字典的增删改查及字典的变量

age']) # 获取年龄 # print(info['sex']) # 获取不存在的key,会发生异常 print(info.get('sex')) # 获取不存在的key,获取到空的内容,不会出现异常...name': 'monitor', 'id': 100} Traceback (most recent call last): File "", line 1, in NameError...,就提示用户名称已存在,添加失败;如果这个姓名在列表里不存在,提示让用户输入年龄,并将用户输入的姓名和年龄添加到这个列表里。...有一个字典dict1 = {“a”:100,“b”:200,“c”:300},使用代码,将字典的key和value互换,变成 {100:“a”,200:“b”,300:“c”}....参考答案:(使用字典推导式) dict1 = {"a": 100, "b": 200, "c": 300} dict2 = {v: k for k, v in dict1.items()} print

11410

Python变量基础

为什么要有变量 有个刚学 Python 第一天的同学问: 不懂为啥要用变量,需要什么值直接写就好了,干嘛还多此一举?...一个真正的程序里面会有各种数据,这些数据不可能都是固定不变的,需要进行计算和处理。为了更方便地使用这些数据,我们要给这些数据取名字。...然后你就可以使用这个变量。如: print(a) 或者用它去创建另一个变量。如: b = a + 2 既然都说了是“变”量,那自然也可以给变量重新赋值。...如果直接使用一个没有赋值过的变量名,引发一个名称未定义NameError 错误,导致程序中断。...结果可能让你大跌眼镜。 因为就我的经验,很多初学者都会踩到的一个坑是: 拼错变量名! 比如前面赋值了个变量叫 name,结果过了几行,又写成了 mame。

12720

【愚公系列】2021年12月 Python教学课程 18-异常处理

这些导致程序在运行过程中出现异常中断和退出的错误,我们统称为异常。大多数的异常都不会被程序处理,而是以错误信息的形式展现出来。...如果 try 嵌套,那么如果里面的 try 没有捕获到这个异常,那么外面的 try 接收到这个异常,然后进行处理。...raise 唯一的一个参数指定了要被抛出的异常的实例,如果什么参数都不给,那么默认抛出当前异常。...异常名 解释 AttributeError 试图访问一个对象没有的属性 IOError 输入/输出异常 ImportError 无法引入模块或包;多是路径问题或名称错误 IndentationError...缩进错误 IndexError 下标索引错误 KeyError 试图访问不存在的键 KeyboardInterrupt Ctrl+C 被按下,键盘终止输入 NameError 使用未定义的变量 SyntaxError

64420

Python 学习之异常

异常是 Python 对象,表示一个错误。当 Python 脚本发生异常时我们需要捕获处理它,否则程序终止执行 造成异常的原因:1. 程序编写有问题造成,产生 Bug ,必须处理 2....无法预料的异常:磁盘已满、断网等 Python 的错误其实也是类 class,错误类型种类很多。而且所有的错误类型都继承自 BaseException 为什么要处理异常?...2 try: print(4 / 0) except: # 使用 except 捕获常规错误,而不使用任何的错误类型 print("程序出现错误") # 使用 except...带着多种异常,匹配到其中一种即报错 try: print(5 / 0) except(NameError, ZeroDivisionError): print("出现了 ZeroDivisionError...或 NameError") 特殊情况3 """ 特殊: 1.错误其实是 class(类),所有的错误都继承自 BaseException,所以在 捕获的时候,它不仅捕获了该类型的错误,还把子类一网打尽

50130
领券