十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章将为大家详细讲解有关python中with抛错的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
创新互联建站是一家专注于成都做网站、成都网站制作与策划设计,灵台网站建设哪家好?创新互联建站做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:灵台等地区。灵台做网站价格咨询:13518219792
使用with后不管with中的代码出现什么错误,都会进行对当前对象进行清理工作。
例如file的file.close()方法,无论with中出现任何错误,都会执行file.close()方法
我们知道使用try-except-finally语句可以处理异常,接下来我们介绍使用with语句处理与异常相关的工作
with语句支持创建资源,抛出异常,释放资源等操作,并且代码简洁。
with语句格式
with 上下文表达式 [as 资源对象]: 对象操作 说明:
上下文表达式,返回一个上下文管理对象
如果指定了as语句,该对象并不赋值给as子句中的资源对象,而是将上下文管理器的__enter__()方法的返回值赋值给了资源对象。
资源对象可以是单变量,也可以是元组。
使用with语句操作文件对象
with open("/test.txt") as file: for aline in file: print(aline)
解释说明: 这段代码使用with语句打开文件,如果顺路打开,则将文件对象赋值给file,然后用for语句遍历打印文件的每一行。当文件操
作结束后,with语句关闭文件。如果这段代码运行过程中发生异常,with也会将文件关闭。
这段代码使用finally语句实现如下:
try: file = open("/test.txt") try: for aline in file: print(aline) except Exception as error: print(error) finally: file.close() except FileNotFoundError as err: print(err)
我们也可以给with语句加上异常处理:
try: with open("/test.txt") as file: for aline in file: print(aline) except Exception as error: print(error)
通过对比可以发现:with语句在进行异常处理时代码简洁很多.
关于python中with抛错的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。