Python学习之旅--异常
Posted 赵jc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习之旅--异常相关的知识,希望对你有一定的参考价值。
1, 异常
-
目的: 知道异常的作用和编写格式
-
操作流程
#1,异常处理的第一种形式, try..except # try: # 1 / 0 # print("try...可能出现问题的代码") # except Exception: # print("except..出现问题之后,在这里进行处理") #2,异常处理的第二种格式, try..except...finally # 不管程序是否有问题,finally中的代码都会执行 # try: # # 1 / 0 # print("try...可能出现问题的代码") # except Exception: # print("except..出现问题之后,在这里进行处理") # finally: # print("做一些收尾的工作,比如文件关闭流,关闭数据库连接") #, 异常处理的第三种方式: try..except..else # else: 程序没有出异常的时候执行 try: 1 / 0 print("try...可能出现问题的代码") except Exception: print("except..出现问题之后,在这里进行处理") else: print("如果没有出问题,走的代码")
2, 自定义异常
-
目的: 可以自定义异常捕获错误
-
操作流程
""" 自定义异常: 1, 当程序提供的异常满足不了我们自己需求的时候自定义 2, 自定义异常需要继承自系统的Exception """"" class MyNumberException(Exception): def __init__(self,min,max): self.min = min self.max = max try: # num = 1/ 0 # raise ZeroDivisionError("division by zero aaaaaa") number = input("请输入一个整数:") number = int(number) if not 10 <= number <= 100: # 输入的值需要在10-100的范围 raise MyNumberException(10,100) except ZeroDivisionError as e: # 捕捉不了, 就会继续向下捕捉 print(e) except MyNumberException as e: # 一旦捕捉,如果还有其他的except不会调用 print("请输入的数值在,,之间".format(e.min,e.max)) except Exception as e: print("......")
- 注意点:
- 1, except一旦捕获当异常之后, 不会向下继续捕获
- 2, 手动抛出异常信息, raise 异常类
- 注意点:
以上是关于Python学习之旅--异常的主要内容,如果未能解决你的问题,请参考以下文章