python with关键词的用法
当你变得足够优秀的时候,你才发现原来她只是,单纯的不喜欢你。
语法
with expression [as variable]:
with-block
with语句块会为这个表达式创建出一个运行时上下文,这个运行时上下文被称为“上下文管理器(Context Manager)”,Python 将自动调用这个上下文管理器的__enter__方法,获取运行时上下文的上下文环境。当with语句块执行完毕时,Python 将自动调用这个上下文管理器的__exit__方法,来自动释放资源并处理异常场景。
例如:
文件读取
with open('file.txt', 'r') as f:
print(f.read())
如果在没有使用with的情况下,f = open('file.txt',‘r’) 方法之后,就必须执行f.close()函数
例如:
数据库操作
import mysql.connector
config = {
'user': 'username',
'password': 'password',
'host': '127.0.0.1',
'database': 'test'
}
with mysql.connector.connect(**config) as conn:
with conn.cursor() as cursor:
cursor.execute("SELECT * FROM user")
rows = cursor.fetchall()
for row in rows:
print(row
总结:with关键字是 Python 的语法糖,用于简化文件读写、数据库操作等资源处理流程。通过使用with关键字,我们可以避免一些常见的异常问题,并使代码更加简洁易读。