成品网站灬1688,低成本做网站 白之家,网站建设目的确定,wordpress重复安装作者#xff1a;Insist-- 个人主页#xff1a;insist--个人主页 本文专栏#xff1a;Python专栏 专栏介绍#xff1a;本专栏为免费专栏#xff0c;并且会持续更新python基础知识#xff0c;欢迎各位订阅关注。 目录
一、了解python异常
1、BUG 单词的由来
2、什么是异… 作者Insist-- 个人主页insist--个人主页 本文专栏Python专栏 专栏介绍本专栏为免费专栏并且会持续更新python基础知识欢迎各位订阅关注。 目录
一、了解python异常
1、BUG 单词的由来
2、什么是异常
二、常见的Python异常类型
三、如何捕获和处理异常
1、常规捕捉语法
2、捕捉指定异常
3、捕捉多个指定的异常 前言
在本文中我将介绍Python异常的基础知识包括了解python异常常见的异常类型以及如何捕获和处理异常。 一、了解python异常
Python异常处理是一种非常重要的编程技巧它可以让你在编写代码时避免出现许多问题。如果程序在运行时发生报错的情况例如除以零、访问不存在的变量等等。Python会引发异常并停止当前代码的执行。如果没有适当的处理措施程序将终止并显示“Traceback”信息。
1、BUG 单词的由来
想要了解BUG 单词的由来就要追溯到世界第一台万用计算机马克二型使用时遇到的一个故障1945年9月9日马克二型计算机无法正常工作了技术人员尝试了很多办法都没有解决问题最后在70号继电器上找到了问题。技术人员观察了许久发现是一只飞蛾导致的无法正常工作将飞蛾抓出来后用透明胶布贴到“事件记录本”中并注明了“第一个发现虫子的实例”在此之后便有 BUG 这个单词。 2、什么是异常
当程序在运行时出现错误时Python就无法执行错误之后的代码同时会出现报错这就是“异常”也就是我们常说的BUG异常可以是由代码错误导致的也可以是由外部因素引起的。那么我们有没有办法在程序出现异常前将他解决掉当然有我们可以使用 try except 语句块来捕获和处理异常。 二、常见的Python异常类型
在了解捕获和处理异常之前我们先来看看这些常见的异常类型
1、ZeroDivisionError当我们将0作为被除数时会发生ZeroDivisionError报错。 例如
print(1 / 0)
解释上面已经说过 ZeroDivisionError: 这种情况发生在将0作为被除数时。在数学中0时不可以做成被除数的所以 Python 会显示 ZeroDivisionError 异常。
2、ValueError: 当操作或函数适用于值超出范围时会发生ValueError报错。 例如
result int(insist)
解释V比如上面的代码我们尝试将字符串“insist”转换为整数但是我们提供的字符串不能转换为整数。所以发生了ValueError报错。
3、KeyError: 当使用字典中不存在的键时会发生KeyError报错。 例如
my_dict {1:2}
value my_dict[insist]
解释如上代码我们尝试从字典中获取一个“”insist”不存在键时会发生此异常。因为在字典中我们并没有定义“insist”所以发生了 KeyError 报错。
4、IndexError当访问列表或其他支持索引的对象中不存在的索引时会发生 IndexError 报错。 例如
my_list [1,2,3]
value my_list[4]
解释如上代码我们尝试试图访问一个只有三个元素的列表的第四个元素。会发生此报错。 三、如何捕获和处理异常
在Python编程语言中我们可以使用 try except 语句块来捕获和处理异常。try语句块内写上可能引发异常的代码而except语句块写上当异常发生时要执行的代码。
1、常规捕捉语法
以下是一个简单的示例
try:result 1 / 0 # 可能引发异常的代码
except :print(发生错误啦) # 当除以零异常发生时要执行的代码
输出结果 在上面的示例中当除以零异常发生时程序将执行except语句块中的代码并打印出“发生错误啦”。如果没有异常发生该代码块将不会执行。
2、捕捉指定异常
以下是一个简单的示例
try:result 1 / 0 # 可能引发异常的代码
except ZeroDivisionError:print(捕捉到了 ZeroDivisionError 错误) # 当除以零异常发生时要执行的代码
输出结果 在这个例子中我们指定了一个异常 ZeroDivisionError 当出现此异常时会正常输出“发生错误啦”如果没有发生我们指定的错误那么程序会发生报错并停止程序运行。
3、捕捉多个指定的异常
以下是一个简单的示例
try:x 1 / 0 # 尝试一些可能会引发异常的代码
except (ZeroDivisionError, TypeError):print(捕捉到了 ZeroDivisionError 或 TypeError ) #异常时要做的事
输出结果