本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
本篇文章来自腾讯云 作者:孤独的明月
( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传群文件流,可以自行下载!还有海量最新2020python学习资料。 )
- 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。
- 一般情况下,在Python无法正常处理程序时就会发生一 个异常。
- 异常是Python对象,表示一个错误。
- 当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。
语法
try:
可能发生错误的代码
except:
如果出现异常执行的代码
体验异常传递
需求:
尝试只读方式打开test.txt文件,如果文件存在则读取文件内容,文件不存在则提示用户即可。
读取内容要求:尝试循环读取内容,读取过程中如果检测到用户意外终止程序,则 except 捕获异
常并提示用户
import time try: f = open('test.txt') try: while True: content = f.readline() if len(content) == 0: break time.sleep(2) print(content) except: # 如果在读取文件的过程中,产生了异常,那么就会捕获到 # 比如 按下了 ctrl+c print('意外终止了读取数据') finally: f.close() print('关闭文件') except: print("没有这个文件")
在Python中,抛出自定义异常的语法为 raise 异常类对象 。
# 自定义异常类,继承Exception class ShortInputError(Exception): def __init__(self, length, min_len): self.length = length self.min_len = min_len # 设置抛出异常的描述信息 def __str__(self): return f'你输入的长度是{self.length}, 不能少于{self.min_len}个字符' def main(): try: con = input('请输入密码:') if len(con) < 3: raise ShortInputError(len(con), 3) except Exception as result: print(result) else: print('密码已经输入完成') main()