⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

Python 上下文管理器 with

__enter__/__exit__/contextlib · 难度:入门 · +20XP

Python 上下文管理器 with —— 自动管理资源

打开文件后要关闭,获取锁后要释放,连接数据库后要断开——这些成对操作容易忘记后半部分。with语句保证无论是否发生异常,资源都会被正确释放。

基本用法

with open('data.txt', 'r') as f:
    content = f.read()
# f自动关闭

class Timer: def __enter__(self): self.start = time.time(); return self def __exit__(self, *args): print(f'耗时:{time.time()-self.start:.2f}s')

动手练习

  1. 基础练习:用with open读取一个文件的内容并打印。
  2. 进阶应用:自己实现一个数据库连接上下文管理器。
  3. 项目实战:把项目中手动try/finally的资源管理改为with语句。

学习提示:每学完一个知识点,建议在Python交互环境中动手验证。编程不是看会的,是写会的。打开你的终端输入python开始练习吧!遇到问题善用官方文档 docs.python.org。坚持每天写代码,三个月后你会看到巨大的进步。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 152 篇
0 完成
🔥 0