经典的笔试题python操作数据库和python设计模式【多测师_王sir】
#coding=utf-8 """ =========================== Author:多测师_王sir Time:2020-12-11 12:00 Wechat:xiaoshubass website:www.duoceshi.cn =========================== """ #第一题 单例设计模式代码如下: class MyClass(object): __obj = None @classmethod def __new__(cls, *args, **kwargs): if not cls.__obj: #如果没有创建对象、就调用父类的new方法创建一个 cls.__obj = super().__new__(cls) return cls.__obj else: #如果创建了、则把第一次的对象返回 return cls.__obj #实例化==》创建对象 m1 = MyClass() m2 = MyClass() m3 = MyClass() print(id(m1)) print(id(m2)) print(id(m3)) #运行结果:内存地址都是一样的、说明根据MyClass类创建的对象都是同一个对象。 #第二题 import pymysql class Db_Utils: def __init__(self): '''把连接数据库的参数设置为实例变量''' self.host = '192.168.112.129' self.user='root' self.password='123456' self.database='dcs8' self.port=3306 def get_connection(self): '''封装一个创建数据库连接的对象''' db = pymysql.connect(self.host,self.user,self.password,self.database,self.port) return db def find_one(self,sql): '''封装一个查询表中1条数据的工具方法''' db = self.get_connection() #对象调用实例方法 cursor = db.cursor() #创建一个游标对象 cursor.execute(sql) one = cursor.fetchone() #提取表中的第一条数据 return one def delete_one(self,del_sql,select_sql): '''封装一个删除表中指定某一条数据并且查询结果的工具方法''' db = self.get_connection() #或者数据库的连接对象 cursor = db.cursor() cursor.execute(del_sql) #执行删除SQL语句 cursor.execute(select_sql) #执行查询SQL语句 db.commit() #如果出现执行了删除却没有删除成功则执行commit方法、commit会把删除和查询事务进行提交 all = cursor.fetchall() return all if __name__ == '__main__': m = Db_Utils() #创建一个对象 # print(m.find_one('select * from test;')) print(m.delete_one('delete from test where id = 4;','select * from test;'))
分类:
多测师_面试题和笔试题和bug
标签:
常见面试题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)