学习笔记30Python基础综合练习

Posted SAP剑客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习笔记30Python基础综合练习相关的知识,希望对你有一定的参考价值。

Python基础综合练习

【综合习题】

设计一个mysql数据库操作的类,可以实现数据库的各种操作(增删改查)。

创建类源代码:

# 创建MySQL数据库操作的类
class Mysql_opeating:
    # 初始化方法:当对象被实例化的时候,自动创建与数据库的连接
    def __init__(self,host,user,password,database,charset,port = 3306):
        import pymysql
        # 用Python 连接数据库
        self.connect = pymysql.Connect(host = host,         #"127.0.0.1",
                                       port = port,         #3306,
                                       user = user,         #"mao",
                                       password = password, #"123456",
                                       database = database, #"pythontest",
                                       charset = charset)   #"utf8")
        # 创建一个光标
        self.cursor = self.connect.cursor()
        print(self.cursor)
        
    def create(self,table,*args):
        """创建数据库表
        table:表名
        *args:字段及数据类型
        """
        columns = ','.join(args)
        sql = "create table {} ( {} )".format(table,columns)
        print(sql)
        self.cursor.execute(sql)
        return '创建Table:'+table+'成功'
    
    def insert(self,table,data):
        """插入数据
        table:表名
        data:多条数据(二维表格式)
        """
        # 计算data中有几列:%s的数量
        n = len(data[0])
        # 拼接%s:列表生成式
        s = ','.join(["%s" for i in range(n)])
        self.cursor.executemany("insert into {} values({})".format(table,s),data)
        # 提交
        self.connect.commit()
        
    def select(self,col,table,condition=None):
        """查询数据
        col:列名
        table:表名
        condition:查询条件,默认无条件
        """
        sql = 'select {} from {}'.format(col,table)
        # 若condition不等于None
        if condition:
            sql += ' where ' + condition
        print(sql)
        # 执行查询语句
        self.cursor.execute(sql)
        # 提取查询结果
        self.data = self.cursor.fetchall()  
        return self.data
    
    def delete(self,table,condition=None):
        """删除数据
        table:表名
        condition:查询条件,默认无条件
        """
        sql = 'delete from ' + table 
        if condition:
            sql += ' where ' + condition
        print(sql)
        # 执行查询语句
        self.cursor.execute(sql)
        # 提交
        self.connect.commit()
        return '删除成功'
    
    def update(self,table,key,value,condition=None):
        """更新数据
        table:表名
        key:列名
        value:值
        condition:查询条件,默认无条件
        """
        sql = "update {} set {} = '{}' where {}".format(table,key,value,condition)
        # 执行查询语句
        self.cursor.execute(sql)
        # 提交
        self.connect.commit()
        return '更新成功'

 测试:

创建实例化对象

创建数据库表

 批量插入表数据

查询表数据

删除指定数据

更新指定数据

 

 

以上是关于学习笔记30Python基础综合练习的主要内容,如果未能解决你的问题,请参考以下文章

Python基础综合练习

22年最新Java笔记:day6-Java基础知识综合练习题

Python基础综合练习

Python基础综合练习

Python基础综合练习

Python基础综合练习