Python十类常见异常类型(附捕获以及异常处理方式) |
您所在的位置:网站首页 › 列举python中常用的组合数据类型 › Python十类常见异常类型(附捕获以及异常处理方式) |
目录
前言十类异常1.TypeError2.ValueError3.NameError4.IndexError5.KeyError6.ZeroDivisionError7.IOError8.ImportError9.AttributeError10.KeyboardInterrupt
异常捕获以及处理总结
![]() 大家好,我是辣条哥!今天给大家讲讲我们刚开始写代码是都会出现的问题-我们刚开始常见的异常以及处理方法! 异常是指在程序运行过程中出现的错误或异常情况,例如除以0、访问不存在的变量等。Python提供了一些内置的异常类型,同时也支持自定义异常类型。 想找辣条哥的话直接戳这里,辣条之前的一些Python相关都可以拿走: 当操作或函数应用于不适当类型的对象时引发。 例如: a = 5 + '10'这个例子中,我们试图将整数5和字符串’10’相加,这是不允许的,因为它们是不同的类型。 2.ValueError当函数或操作的参数具有正确的类型但不合法时引发。 例如: int('abc')这个例子中,我们试图将字符串’abc’转换为整数,但是’abc’不是一个有效的整数,因此会引发ValueError异常。 3.NameError当尝试访问一个未定义的变量时,会抛出NameError异常。 例如: print(x)这个例子中,我们尝试打印变量x的值,但是x没有被定义,因此会引发NameError异常。 4.IndexError当尝试访问列表、元组或字符串中不存在的索引时引发。 例如: a = [1, 2, 3] print(a[3])这个例子中,我们试图访问列表a的第四个元素,但是a只有三个元素,因此会引发IndexError异常。 5.KeyError当尝试访问字典中不存在的键时引发。 例如: d = {'a': 1, 'b': 2} print(d['c'])这个例子中,我们试图访问字典d中不存在的键’c’,因此会引发KeyError异常。 6.ZeroDivisionError当尝试除以零时引发。 例如: a = 5 / 0这个例子中,我们试图将5除以0,这是不允许的,因为除数不能为零,因此会引发ZeroDivisionError异常。 7.IOError当尝试读取不存在的文件或无法访问文件时引发。 例如: f = open('nonexistent_file.txt', 'r')这个例子中,我们试图打开一个不存在的文件nonexistent_file.txt,因此会引发IOError异常。 8.ImportError当尝试导入不存在的模块或包时引发。 例如: import nonexistent_module这个例子中,我们试图导入一个不存在的模块nonexistent_module,因此会引发ImportError异常。 9.AttributeError当尝试访问对象不存在的属性时引发。 例如: s = 'hello' print(s.uppercase())这个例子中,我们试图调用字符串s的不存在的方法uppercase(),因此会引发AttributeError异常。 10.KeyboardInterrupt当用户中断程序执行时引发。 例如: while True: try: x = input('Enter a number: ') break except KeyboardInterrupt: print('You pressed Ctrl+C!')这个例子中,我们在一个无限循环中等待用户输入一个数字,但是如果用户按下Ctrl+C,程序会引发KeyboardInterrupt异常,我们可以捕获这个异常并打印一条消息。 异常捕获以及处理在Python中,可以使用try-except语句来捕获异常并进行处理。try语句块中包含可能会出现异常的代码,如果出现异常,则会跳转到except语句块中进行处理。可以使用多个except语句块来处理不同类型的异常,也可以使用一个except语句块来处理所有类型的异常。 例如: try: x = 1 / 0 except ZeroDivisionError: print("除以0错误")除了使用内置的异常类型,还可以自定义异常类型。自定义异常类型通常继承自Exception类或其子类。例如: class MyException(Exception): pass try: raise MyException("自定义异常") except MyException as e: print(e)在Python中,还可以使用finally语句块来定义无论是否出现异常都需要执行的代码。例如: try: x = 1 / 0 except ZeroDivisionError: print("除以0错误") finally: print("finally语句块") 总结以上是Python中常见的异常类型和异常处理方法。在编写程序时,应该尽可能地避免出现异常情况,同时也应该合理地处理可能出现的异常。 ↓ ↓ ↓ 下方辣条名片,各种源码+案例 ↓ ↓ ↓ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |