Python源码之with原理
2021-07-01 11:08
标签:调用 mysq etc 使用 数据库 解决 font type 打开 我们平时对文件和数据库操作的时候,执行的步骤都是打开---操作数据---关闭,这是正常的操作顺序,但有时候难免会在操作完数据之后忘记关闭文件对象或数据库,而使用with正是可以解决这个问题。 对于要使用with语句的对象,在执行with代码体之前会首先执行该对象的__enter__方法,然后再执行代码体,最后自动执行__exit__方法。 Python源码之with原理 标签:调用 mysq etc 使用 数据库 解决 font type 打开 原文地址:https://www.cnblogs.com/liuyinzhou/p/9637669.html需求
原理
class MysqlHelper(object):
def open(self):
print(‘open‘)
pass
def close(self):
print(‘close‘)
pass
def fetch_all(self):
pass
def __enter__(self):
"""
在执行with语句中代码之前该函数首先被调用
:return:
"""
self.open()
def __exit__(self, exc_type, exc_val, exc_tb):
"""
当with语句中最后一行代码执行完毕之后,自动调用该方法
:param exc_type:
:param exc_val:
:param exc_tb:
:return:
"""
self.close()
with MysqlHelper() as f:
pass