Python 管理系统程序

来源:互联网 发布:java web网站开发 编辑:程序博客网 时间:2024/06/05 06:57

                                             Python连接数据库对对学生进行管理的一个程序

代码如下:

# -*- coding:utf8 -*-import MySQLdbclass Student:    def __init__(self):        self.name = None        self.cursor = None        self.connect()    def connect(self):        self.db = MySQLdb.Connect(host="127.0.0.1",user="root",passwd="123456",db="1508b")        self.cursor = self.db.cursor()    def start(self):        while True:            self.menu()            num = raw_input("请选择:")            print num.isdigit()            if num.isdigit() == False:                continue            num = int(num)            if num == 1:                self.showStudent()            elif num == 2:                self.addStudent()            elif num == 3:                self.delStudent()            elif num == 4:                self.updateStudent()            elif num == 5:                self.close()                exit(0)    def showStudent(self):        while True:            self.menu1()            num = input("请选择: 0-3")            if num == 1:                self.cursor.execute("select * from student;")                for row in self.cursor:                    print "id:",row[0],"姓名:",row[1],"年龄:",row[2]            elif num == 2:                sid = input("请输入id:")                self.cursor.execute("select * from student where id=%d" %sid)                if self.cursor.rowcount==0:                    print "没有该学生!"                else:                    for row in self.cursor:                        print "id:", row[0], "姓名:", row[1], "年龄:", row[2]            elif num == 3:                sname = raw_input("请输入要查找的姓名:")                self.cursor.execute("select * from student where name='%s'" %sname)                if self.cursor.rowcount==0:                    print "没有该学生!"                else:                    for row in self.cursor.fetchall():                        print "id:", row[0], "姓名:", row[1], "年龄:", row[2]            else:                self.start()                break    def addStudent(self):        while True:            sname = raw_input("请输入添加的姓名:")            sage = raw_input("请输入添加的年龄:")            try:                sql = "insert into student(name,age)values(%s,%s);"                self.cursor.execute(sql,(sname,sage))                self.db.commit()                print "添加成功!"            except:                self.db.rollback()                print "添加失败!"            q = raw_input("按任意键继续,按q退出:")            if q == "q":                break    def delStudent(self):        self.menu3()        num = input("请选择:")        if num == 1:            sid = raw_input("根据id进行删除:")            list1 = sid.split(" ")            print list1            list2 = map(lambda x: (int(x),), list1)            print list2            sql = "delete from student where id=%s"            try:                self.cursor.executemany(sql, list2)                self.db.commit()                print "删除成功!"            except:                print "删除失败!"                self.db.rollback()        elif num == 2:            sname = raw_input("请输入学生姓名:")            try:                sql = "delete from student where name='%s'" % sname                self.cursor.execute(sql)                self.db.commit()                print "删除成功!"            except:                self.db.rollback()                print "删除失败!"        else:            pass    def updateStudent(self):        try:            sid = raw_input("请输入要修改的id:")            sname = raw_input("请输入修改的姓名:")            sage = raw_input("请输入修改的年龄:")            sql = "update student set name='%s', age=%s where id=%s" % (sname, sage, sid)            self.cursor.execute(sql)            self.db.commit()            print "修改成功!"        except:            print "修改失败!"            self.db.rollback()    def close(self):#结束        self.db.commit()    def menu(self):        print """            1.查看学生            2.添加学生            3.删除学生            4.修改学生            5.退出系统        """    def menu1(self):        print """           0.返回上一级           1.显示全部学生           2.根据id查询           3.根据姓名查询        """    def menu3(self):        print """        0.返回上一级        1.根据id查询        2.根据姓名查询        """if __name__ == '__main__':    student = Student()    student.start()

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 乳房长妊娠纹了怎么办 宝宝忌奶晚上哭怎么办 20岁胸下垂松软怎么办 断奶时乳房有肿块怎么办 孩子断奶后乳房变小怎么办 断奶了月经不来怎么办 钥匙在门上拔不出来怎么办 钥匙拔不下来了怎么办 养了几天鱼死了怎么办 乌龟的眼睛肿了怎么办 手被鱼刺扎了怎么办 被鱼刺扎手肿了怎么办 手被桂鱼扎了怎么办 三岁宝宝卡鱼刺怎么办 一岁宝宝卡鱼刺怎么办 鱼刺卡在胸口了怎么办 婴儿被鱼刺卡了怎么办 幼儿被鱼刺卡到怎么办 鱼刺被吞下去了怎么办 喉咙卡到鱼刺下不去怎么办 被小鱼刺卡了怎么办 晚上被鱼刺卡到怎么办 一个小鱼刺卡了怎么办 卡了一个小鱼刺怎么办 鱼刺卡在气管里怎么办 刺蛾幼虫 蛰了怎么办 被杨树辣子蛰了怎么办 蜇了老子蜇了怎么办 被刺蛾幼虫蛰了怎么办 孕妇被蚊虫叮咬发痒怎么办 白掌叶子尖发黄怎么办 白掌叶子卷了怎么办 白掌叶子全软了怎么办? 发财树有黄斑了怎么办 幸福树叶子蔫了怎么办 幸福树枝条塌了怎么办? 幸福树叶子嫣了怎么办 毒蚊子叮咬肿硬怎么办 被蚊子咬了很痒怎么办 蚊子咬了脚肿了怎么办 小孩被蚊子咬了怎么办