with 上下文管理器
with 上下文管理器
文件读取三步骤
# 读或写方式打开文件
f = open('python.txt','w')
# 读或写文件
f.write('hello python')
# 关闭文件
f.close()
- 文件使用完之后,必须关闭文件。因为文件对象会占用操作系统的资源,并且操作系统同一时间能打开的文件的数量也是有限的
使用try...except...else...finally能达到不管文件打开是否出错都可以关闭文件的效果,但是代码比较冗长。
try:
# 1、以读的方式打开文件
f = open("1.txt", "r")
# 2、读取文件内容
f.write("xxxxx")
except IOError as e:
print("文件操作出错", e)
finally:
# 3、关闭文件
f.close()
with 语句也称为上下文管理器
上文管理器中 使用 __enter__()
魔术方法 调用了open函数
f = open('python.txt','w')
下文管理器 使用__exit__()
魔术方法 调用了close函数
f.close()
在with语句中,不管中间的代码是否出现异常,最后都会执行close()函数,关闭文件避免系统资源的浪费
with open('python.txt','w') as f:
f.write('hello python!')
- Python提供了with 语句的这种写法,既简单又安全,并且 with 语句执行完成以后自动调用关闭文件操作,即使出现异常也会自动调用关闭文件操作。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」