1. 本际云推荐 - 专业推荐VPS、服务器,IDC点评首页
  2. 云主机运维
  3. VPS运维

python前后文管理工具合同的完成

前后文管理工具协议书

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

python前后文管理工具合同的完成

前后文管理工具协议书解析

在前后文管理工具协议书的过程中,牵涉到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