前后文管理工具协议书
本文关键阐述了python前后文管理工具合同的完成,在python中所有完成了前后文管理工具协议书目标都能用应用with实际操作,with开启了目标前后文管理工具。

前后文管理工具协议书解析
在前后文管理工具协议书的过程中,牵涉到2个魔术师方式__enter__方法与__exit__方式。完成简单的文件操作来看一下前后文管理工具协议书:
class MyOpen:
#创建对象
def __init__(self, filename, mode, encoding):
self.filename = filename
self.mode = mode
self.encoding = encoding
def __enter__(self):
print("—enter—方式")
#实行文件打开实际操作
self.f = open(self.filename, self.mode, encoding=self.encoding)
return self.f
def __exit__(self, exc_type, exc_val, exc_tb):
"""
:param exc_type:异常类型
:param exc_val:异常信心
:param exc_tb:出现异常追溯目标
:return:
"""
print('—-enter—')
self.f.close()
操作数据库的前后文管理工具协议书
用pymysql完成1个操作数据库的类,完成前后文管理工具协议书,完成撤出前后文时,自动退出游标卡尺,中断连接。
todo:版本1
class mysql_db(object):
#创建对象属性
def __init__(self):
#连接数据库
self.cou = pymysql.connect(
host="数据库主机地址",
port=端口,
user="登录数据库的账号",
password="登录数据库的密码",
database="数据库名称",
charset='utf8',
cursorclass=pymysql.cursors.DictCursor #将默认的元组格式转换成字典格式输出
)
#创建游标卡尺
self.cur = self.cou.cursor()
def __enter__(self):
return self.cur #返回cur目标
def __exit__(self, exc_type, exc_val, exc_tb):
"""
:param exc_type:异常类型
:param exc_val:异常信息
:param exc_tb:出现异常追溯目标
:return:
"""
#关闭游标卡尺
self.cur.close()
#关闭数据库连接
self.cou.close()
def Obtain_one_date():
with mysql_db() as db:
db.execute('select * from t_customer LIMIT 4') #应用execute方法进行查询语句
content = db.fetchone() #返回一条数据的查询的结果
print(content)
#函数调用
Obtain_one_date()
todo:版本2
sql='select * from t_customer LIMIT 4'
def mysql_db1(**kwargs):
return pymysql.connect(host=kwargs.get('host','xxxx'),
user=kwargs.get("user",'xxxx'),
passwd=kwargs.get("passwd",'xxxx'),
database=kwargs.get("database",'xxxx'),
port=kwargs.get('port',xxxx),
charset=kwargs.get('charset','utf8'))
#创建数据库连接目标
cou = mysql_db1()
#创建游标卡尺
with cou.cursor() as cu:
cu.execute(sql) #应用execute方法进行查询语句
commt = cu.fetchone() #返回一条数据的查询的结果
print(commt)
#函数调用
mysql_db1()
综上所述,本篇文章关键阐述了python前后文管理工具合同的完成,以及用前后文管理工具协议书完成了对文件和数据库的操作,希望可以给大家带来帮助。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/5774.html
