精华内容
下载资源
问答
  • Python学生成绩管理系统源码+.exe,Pycharm及自带IDLE完美运行,可用来应付大作业或作为基础学习,内含心得体会以及细节注释,易根据自身需要修改,源码在system文件夹里
  • python 学生成绩管理系统 需求: 代码: import os filename = 'student.txt' def main(): while True: menu() choice = int(input("请选择:")) if choice in [0,1,2,3,4,5,6,7]: if choice==0: answer = ...

    python 学生成绩管理系统

    需求:

    在这里插入图片描述

    代码:

    import os
    filename = 'student.txt'
    
    def main():
        while True:
            menu()
            choice = int(input("请选择:"))
            if choice in [0,1,2,3,4,5,6,7]:
                if choice==0:
                    answer = input("你确定要退出吗?y/n")
                    if answer =='y' or answer =='Y':
                        print("谢谢使用!")
                        break
                    else:
                        continue
                elif choice ==1:
                    insert()
                elif choice ==2:
                    search()
                elif choice ==3:
                    delete()
                elif choice ==4:
                    modify()
                elif choice ==5:
                    sort()
                elif choice ==6:
                    total()
                else:
                    show()
    # 菜单
    def menu():
        print("====================学生成绩管理系统=========================")
        print("======================功能菜单==============================")
        print("\t\t1、录入学生信息")
        print("\t\t2、查找学生信息")
        print("\t\t3、删除学生信息")
        print("\t\t4、修改学生信息")
        print("\t\t5、排序")
        print("\t\t6、统计学生人数")
        print("\t\t7、显示所有学生信息")
        print("\t\t0、退出系统")
        print("--------------------------------------------------------------")
    # 插入
    def insert():
        student_list=[]
        while True:
            id = input('请输入ID(如1001):')
            if not id:
                break
            name = input('请输入姓名:')
            if not name:
                break
    
            try:
                english=int(input("input english grade:"))
                python=int(input("input python grade:"))
                java=int(input("input java grade:"))
            except:
                print("输入成绩无效!重新输入!")
                continue
    
            student = {'id':id,'name':name,'english':english,'python':python,'java':java}
            student_list.append(student)
            answer = input("是否继续添加信息!?:'y/n'")
            if answer == 'y':
                continue
            else:
                break
    
        # 调用save函数将其保存在文本当中
        save(student_list)
        print("学生信息录入成功!")
    # 保存
    def save(lst):
        try:
            stu_txt = open(filename,'a',encoding='utf-8')
        except:
            stu_txt = open(filename,'w',encoding='utf-8')
        
        for item in lst:
            stu_txt.write(str(item)+'\n')
        stu_txt.close()
    # 搜索
    def search():
        while True:
            student_name = input("请输入你要查找的学生姓名:")
            if student_name:
                if os.path.exists(filename):
                    with open(filename,'r',encoding='utf-8') as rfile:
                        student_old = rfile.readlines()
                else:
                    student_old = []
    
                if student_old:
                    d = {}
                    flag = False
                    for item in student_old:
                        d = dict(eval(item))
                        if d['name'] == student_name:
                            flag = True
                            student_show(d)
                        else:
                            pass
                        
                else:
                    print("无学生信息,请添加!")
                if flag:
                    print("查询成功")
                else:
                    print("查询失败")
            else:
                print("没有输入学生姓名!")
            
            answer = input("请问是否继续查询:y/n")
            if answer == "y":
                continue
            else:
                break
    # 展示个人信息
    def student_show(dic):
        format_title = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}'
        print(format_title.format('ID','姓名','英语成绩','python成绩','java成绩','总成绩'))
    
        format_data = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}'
        print(format_data.format(dic.get('id'),
                                dic.get('name'),
                                dic.get('english'),
                                dic.get('python'),
                                dic.get('java'),
                                int(dic.get('english'))+int(dic.get('python'))+int(dic.get('java')),
                                ))
    # 删除
    def delete():
        while True:
            student_id = input("请输入要删除的学生ID:")
            if student_id:
                if os.path.exists(filename):
                    with open(filename,'r',encoding='utf-8') as file:
                        student_old = file.readlines()
                else:
                    student_old=[]
                flag = False
                if student_old:
                    with open(filename,'w',encoding='utf-8') as wfile:
                        d={}
                        for item in student_old:
                            d = dict(eval(item))
                            if d['id']!=student_id:
                                wfile.write(str(d)+"\n")
                            else:
                                flag = True
                        if flag:
                            print(f"{student_id}已经被删除!")
                        else:
                            print(f"{student_id}没有找到!")
                else:
                    print("无学生信息!")
                    break
    
                show()
                answer = input("是否继续删除?y/n")
                if answer == 'y':
                    continue
                else:
                    break
            else:
                print("请输入要删除的ID:")
                continue
    # 修改      
    def modify():
        while True:
            student_id = input("请输入要修改的学生ID:")
            if student_id:
                if os.path.exists(filename):
                    with open(filename,'r',encoding='utf-8') as file:
                        student_old = file.readlines()
                else:
                    student_old=[]
                if student_old:
                    with open(filename,'w',encoding='utf-8') as wfile:
                        d = {}
                        for item in student_old:
                            d = dict(eval(item))
                            if d['id'] == student_id:
                                answer = input('已经找到该学生信息,是否修改:y/n?')
                                flag = False
                                if answer:
                                    d['name']=input("姓名:")
                                    d['english']=int(input("english:"))
                                    d['python']=int(input("python:"))
                                    d['java']=int(input("java:"))
                                    wfile.write(str(d)+"\n")
                                    flag = True
                                else:
                                    wfile.write(str(d)+"\n")
                                    break
                            else:
                                wfile.write(str(d)+"\n")
                        if flag:
                            print("修改成功!")
                        else:
                            print("修改失败!")
                else:
                    print("无学生信息,请添加")
                answer = input("请问是否继续修改?y/n")
                if answer == "y":
                    continue
                else:
                    break
            else:
                print("输入错误!")
    # 排序           
    def sort():
        while True:
            if os.path.exists(filename):
                with open(filename,'r',encoding='utf-8') as file:
                    student_old = file.readlines()
                student_new = []
                d={}
                for item in student_old:
                    d=dict(eval(item))
                    student_new.append(d)
                asc_and_desc = int(input("怎么排序:0 升序  1 降序:"))
                choice = int(input("按照什么排序:1 english  2 python  3 java  0 总成绩:"))
                if choice == 1:
                    student_new.sort(key=lambda x:int(x['english']),reverse=asc_and_desc)
                elif choice == 2:
                    student_new.sort(key=lambda x:int(x['python']),reverse=asc_and_desc)
                elif choice == 3:  
                    student_new.sort(key=lambda x:int(x['java']),reverse=asc_and_desc)
                elif choice == 0:
                    student_new.sort(key=lambda x:int(x['english'])+int(x['python'])+int(x['java']),reverse=asc_and_desc)
                else:
                    print("输入有误")
                    sort()
            else:
                print("无学生信息")
            format_title = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}'
            print(format_title.format('ID','姓名','英语成绩','python成绩','java成绩','总成绩'))
    
            format_data = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}'
            for dic in student_new:
                print(format_data.format(dic.get('id'),
                                        dic.get('name'),
                                        dic.get('english'),
                                        dic.get('python'),
                                        dic.get('java'),
                                        int(dic.get('english'))+int(dic.get('python'))+int(dic.get('java')),
                                        ))
            answer = input("请问是否继续排序?y/n")
            if answer == "y":
                continue
            else:
                break
    # 总人数
    def total():
        if os.path.exists(filename):
            with open(filename,'r',encoding='utf-8') as file:
                student_old = file.readlines()
            print('一共有',len(student_old),'名学生!')
        else:
            print("无人员资料")
        import msvcrt
        msvcrt.getch()
    # 展示
    def show():
        if os.path.exists(filename):
            with open(filename,'r',encoding='utf-8') as file:
                student_old = file.readlines()
            d = {}
            students = []
            for item in student_old:
                d = dict(eval(item))
                students.append(d)
        else:
            print("没有信息!")
        if len(students):
            format_title = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}'
            print(format_title.format('ID','姓名','英语成绩','python成绩','java成绩','总成绩'))
    
            format_data = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}'
            for dic in students:
                print(format_data.format(dic.get('id'),
                                        dic.get('name'),
                                        dic.get('english'),
                                        dic.get('python'),
                                        dic.get('java'),
                                        int(dic.get('english'))+int(dic.get('python'))+int(dic.get('java')),
                                        ))
        else:
            print("无人员信息!")
        import msvcrt
        msvcrt.getch()
    
    if __name__ == '__main__':
        main()
    
    
    
    
    
    展开全文
  • 基本功能都有!仅作参考!
  • 摘要:这篇Python开发技术栏目下的“Python学生成绩管理系统简洁版”,介绍的技术点是“python学生成绩管理系统、Python学生成绩管理、学生成绩管理系统、Python、管理系统、学生”,希望对大家开发技术学习和问题...

    摘要:这篇Python开发技术栏目下的“Python学生成绩管理系统简洁版”,介绍的技术点是“python学生成绩管理系统、Python学生成绩管理、学生成绩管理系统、Python、管理系统、学生”,希望对大家开发技术学习和问题解决有帮助。这篇文章主要为大家详细介绍了简洁版的Python学生成绩管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    讲起学生成绩管理系统,从大一C语言的课程设计开始,到大二的C++课程设计都是这个题,最近在学树莓派,好像树莓派常用Python编程,于是学了一波Python,看了一点基本的语法想写点东西练下手。

    开发环境:Ubuntu+Python2.7

    代码如下:

    #coding=utf-8

    #保存学生信息

    studentList=[]

    def addInfo(name,addr):

    tempInfo={}

    tempInfo['name']=name

    tempInfo['addr']=addr

    studentList.append(tempInfo)

    print(studentList)

    def delInfo(number):

    if number=0 :

    del studentList[number]

    else:

    print("您输入的序号有误:")

    def changeInfon(modifNum,name,addr):

    if modifNum=0 :

    tempInfo={}

    tempInfo['name']=name

    tempInfo['addr']=addr

    studentList[modifNum]=tempInfo

    else:

    print("您输入的序号有误:")

    def findInfo(findName):

    i=0

    for info in studentList:

    if findName ==info['name']:

    print("您要查找的信息为%i %s %s"%(i,info['name'],info['addr']))

    while True:

    print("-"*30)

    print("请输入您的选项")

    print("1.新增学生信息")

    print("2.删除学生信息")

    print("3.修改学生信息")

    print("4.查询学生信息")

    print("-"*30)

    #等待用户输入选项

    choose=int(raw_input("请输入您的选项:"))

    if 1==choose:

    name=raw_input("请输入学生的姓名:")

    addr=raw_input("请输入学生的籍贯:")

    addInfo(name,addr)

    elif 2==choose:

    if 0==len(studentList):

    print("当前系统没用任何学生信息")

    continue

    i=0

    for info in studentList:

    print("%i %s %s"%(i,info['name'],info['addr']))

    i+=1

    number=int(raw_input("请输入要删除的序号:"))

    delInfo(number)

    print("删除之后的信息为:%s"%studentList)

    elif 3==choose:

    i=0

    for info in studentList:

    print("%i %s %s"%(i,info['name'],info['addr']))

    i+=1

    modifNum=int(raw_input("请输入要修改的序号:"))

    name=raw_input("请输入学生的姓名:")

    addr=raw_input("请输入学生的籍贯:")

    changeInfon(modifNum,name,addr)

    print("修改之后的信息为:%s"%studentList[modifNum])

    elif 4==choose:

    findName=raw_input("请输入要查找的学生的姓名:")

    findInfo(findName)

    else :

    print("您输入的有误,请重新输入")

    continue

    更多学习资料请关注专题《管理系统开发》。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持Java大数据社区。

    展开全文
  • python学生成绩管理系统.rar
  • 主要为大家详细介绍了简洁版的Python学生成绩管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 说到学生成绩管理系统,这是问题的C语言课程设计大一到大二的c++课程设计。最近我正在学习覆盆子π。看来,覆盆子π经常使用Python编程,所以我学会了一波又一波的Python。读完基本语法,我想写点东西来练习。开发环境:...

    说到学生成绩管理系统,这是问题的C语言课程设计大一到大二的c++课程设计。最近我正在学习覆盆子π。看来,覆盆子π经常使用Python编程,所以我学会了一波又一波的Python。读完基本语法,我想写点东西来练习。开发环境:代码如下:# = utf - 8编码#保存学生信息studentList = [] def addInfo(名称、addr): tempInfo = {} tempInfo['名字']= nametempInfo [\u201Caddr\u201D] = addr (tempInfo)打印(studentList) def delInfo(数量):德尔studentList[数字]:打印(\u201C您输入的序列号是不正确的:\u201C)def changeInfon (modifNum、名称、addr): tempInfo = {} tempInfo['名字']= nametempInfo [\u201Caddr\u201D] = addrstudentList [modifNum] = tempInfoelse:打印(\u201C您输入的序列号是不正确的:\u201C)def findInfo (findName):我= 0 studentList信息:如果findName = =信息['名字']:打印(\u201C您正在寻找的信息是我% % s % s\u201C%(我,信息(\u201C名字\u201D),信息(\u201Caddr\u201D)))而真实:打印(\u201C-\u201D* 30)打印(请输入你的选择)打印(\u201C1。

    删除学生信息\u201D)打印(\u201C3。修改学生信息\u201D)打印(\u201C4。查询学生信息\u201D)打印(\u201C-\u201D* 30)#等待用户输入选项选择= int (raw_input(\delInfo(数字)打印(\u201C删除后的信息是:% s\u201D% studentList) elif 3 = =选择:i = 0 studentList:信息的打印(\u201C我% % s % s\u201D%(我,信息(\u201C名字\u201D),信息(\u201Caddr\u201D))) i + = 1 modifNum = int (raw_input(\u201C请输入序列号要修改:\u201C))name = raw_input(\u201C请输入学生的名字:\u201D)addr = raw_input(\u201C请输入学生的籍贯:\u201D)changeInfon (modifNum、名称、addr)打印(\u201C修改后的信息是:% s % studentList [modifNum]) elif 4 = =选择:findName = raw_input(\u201C请输入学生的名字名称:\u201C)findInfo (findName)其他:打印(\u201C输入有误,请重新输入\u201D)继续

    展开全文
  • Python学生成绩管理系统----极简版

    万次阅读 多人点赞 2018-05-18 17:44:24
    Python学生成绩管理系统 全部代码:点击打开链接 说明: 这是一个极其简易的管理系统,这是本人本科阶段的课堂作业,并无任何商业或者实用价值(因上次有人留言说我写的太烂了,特此说明!) 此管理系统实现...

     

    Python学生成绩管理系统(学业繁忙,不提供答疑)

    全部代码:点击打开链接

     

    说明:

     

    • 这是一个极其简易的管理系统,这是本人本科阶段的课堂作业,并无任何商业或者实用价值(因上次有人留言说我写的太烂了,特此说明!)
    • 此管理系统实现了 增、删、改、查 四个功能
    • 未关联任何数据库软件
    • 使用CSV文件当作数据库
    • 可实现数据存储功能
    • 极其简易,不喜勿喷
    • <--微信在左边

    最近加我微信的颇多,都是大学生应付课设

    在此说明,非技术讨论者,勿扰

    另外,已增加 注册功能

    2018年12月17日 11点31分

    运行截图:

    代码:

    源码在此点击打开链接

    (一不小心设置了积分,网盘链接:链接:https://pan.baidu.com/s/135Ycznh9AkwYGuEQ-ZPizw 
    提取码:xr6m ,给个赞哈,老铁!)

    main.py

    from tkinter import *  
    from LoginPage import *  
    root = Tk()  
    root.title('Python成绩管理系统_by vision')  
    LoginPage(root)  
    root.mainloop()  
    

     

    LoginPage.py

    from tkinter import *  
    from tkinter.messagebox import *  
    from MainPage import *  
      
    class LoginPage(object):  
        def __init__(self, master=None):  
            self.root = master #定义内部变量root  
            self.root.geometry('%dx%d' % (300, 180)) #设置窗口大小  
            self.username = StringVar()  
            self.password = StringVar()  
            self.createPage()  
      
        def createPage(self):
            self.page = Frame(self.root) #创建Frame  
            self.page.pack()  
            Label(self.page).grid(row=0, stick=W)  
            Label(self.page, text = '账户: ').grid(row=1, stick=W, pady=10)  
            Entry(self.page, textvariable=self.username).grid(row=1, column=1, stick=E)  
            Label(self.page, text = '密码: ').grid(row=2, stick=W, pady=10)  
            Entry(self.page, textvariable=self.password, show='*').grid(row=2, column=1, stick=E)  
            Button(self.page, text='登陆', command=self.loginCheck).grid(row=3, stick=W, pady=10)  
            Button(self.page, text='退出', command=self.page.quit).grid(row=3, column=1, stick=E)
            
      
        def loginCheck(self):  
            name = self.username.get()  
            password = self.password.get()
            if name=='admin' and password=='admin':
                self.page.destroy()  
                MainPage(self.root)  
            else:  
                showinfo(title='错误', message='账号或密码错误!') 
    

     

    MainPage.py

    from tkinter import *  
    from view import *  #菜单栏对应的各个子页面  
      
    class MainPage(object):  
        def __init__(self, master=None):  
            self.root = master #定义内部变量root  
            self.root.geometry('%dx%d' % (600, 400)) #设置窗口大小  
            self.createPage()  
      
        def createPage(self):  
            self.inputPage = InputFrame(self.root) # 创建不同Frame  
            self.deletePage = DeleteFrame(self.root)
            self.modifyPage = ModifyFrame(self.root)
            self.queryPage = QueryFrame(self.root) 
            self.inputPage.pack() #默认显示数据录入界面  
            menubar = Menu(self.root)  
            menubar.add_command(label='增', command = self.inputData)  
            menubar.add_command(label='删', command = self.deleteData)  
            menubar.add_command(label='改', command = self.modifyData)  
            menubar.add_command(label='查', command = self.queryData)  
            self.root['menu'] = menubar  # 设置菜单栏  
      
        def inputData(self):  
            self.inputPage.pack()  
            self.queryPage.pack_forget()  
            self.deletePage.pack_forget()
            self.modifyPage.pack_forget() 
    
        def deleteData(self):  
            self.inputPage.pack_forget()  
            self.queryPage.pack_forget()  
            self.deletePage.pack()  
            self.modifyPage.pack_forget()
    
        def modifyData(self):  
            self.inputPage.pack_forget()  
            self.queryPage.pack_forget()  
            self.deletePage.pack_forget()  
            self.modifyPage.pack()         
            
        def queryData(self):  
            self.inputPage.pack_forget()  
            self.queryPage.pack()  
            self.deletePage.pack_forget()  
            self.modifyPage.pack_forget()  
      
      
      
       
    

     

    view.py

     

    from tkinter import *  
    from tkinter.messagebox import *  
      
    class InputFrame(Frame): # 继承Frame类  
        def __init__(self, master=None):  
            Frame.__init__(self, master)  
            self.root = master #定义内部变量root  
            self.E1 = Entry(self)
            self.E2 = Entry(self)
            self.E3 = Entry(self)
            self.E4 = Entry(self)
            self.E5 = Entry(self)
            self.createPage()  
    
        def Isspace(self,text):
            temp = 0
            for i in text:
               if not i.isspace():
                   temp = 1
                   break;
    
            if temp==1:
                return 0
            else:
                return 1
    
    
        def write(self,name,num,course,score):
            f = open('成绩.csv','r',encoding='utf-8')
            for line in f.readlines():
                info = line[:-1].split(",")
                if len(info)<4:
                    break
                if info[1]==num and info[2]==course:
                     messagebox.showinfo(title='结果', message ="已存在该学生科目信息!")
                     f.close()
                     return
    
            f.close()
            f = open('成绩.csv','a',encoding='utf-8')
            f.write('{},{},{},{}\n'.format(name,num,course,score))
            f.close()
            messagebox.showinfo(title='提示', message ="写入成功")
            return
        
        def click(self):
            name = self.E1.get()
            num = self.E2.get()
            course = self.E3.get()
            score = self.E4.get()
            if self.Isspace(name) or self.Isspace(num) or self.Isspace(course) or self.Isspace(score) :
                messagebox.showinfo(title='提示', message ="输入项为空")
            else:
                self.write(name,num,course,score)
                
            
            
        def createPage(self):  
            Label(self).grid(row=0, stick=W, pady=10)
            
            Label(self, text = '姓名: ').grid(row=1, stick=W, pady=10)
            self.E1.grid(row=1, column=1, stick=E)
    
            Label(self, text = '学号: ').grid(row=2, stick=W, pady=10)
            self.E2.grid(row=2, column=1, stick=E)
    
            Label(self, text = '科目: ').grid(row=3, stick=W, pady=10) 
            self.E3.grid(row=3, column=1, stick=E) 
    
            Label(self, text = '成绩: ').grid(row=4, stick=W, pady=10)
            self.E4.grid(row=4, column=1, stick=E)       
            
            Button(self, text='录入',command=self.click).grid(row=6, column=1, stick=E, pady=10)  
      
      
    class DeleteFrame(Frame): # 继承Frame类  
        def __init__(self, master=None):  
            Frame.__init__(self, master)  
            self.root = master #定义内部变量root
            self.E1 = Entry(self)
            self.E2 = Entry(self)
            self.createPage()
            
        def Isspace(self,text):
            temp = 0
            for i in text:
               if not i.isspace():
                   temp = 1
                   break;
    
            if temp==1:
                return 0
            else:
                return 1
    
        def delete(self,num,course):
            temp = 0
            with open("成绩.csv","r",encoding="utf-8") as f:
                lines = f.readlines()
       
            with open("成绩.csv","w",encoding="utf-8") as f_w:
                for line in lines:
                    info = line[:-1].split(",")
                    if info[1]==num and info[2]==course:
                        temp = 1
                        continue
                    f_w.write(line)
            if temp==0:
                messagebox.showinfo(title='提示', message ="没有该信息")
            else:
                messagebox.showinfo(title='提示', message ="删除成功")
            
        def click(self):
            num = self.E1.get()
            course = self.E2.get()
            if self.Isspace(num) or self.Isspace(course):
                messagebox.showinfo(title='提示', message ="输入项为空")
            else:
                self.delete(num,course)
                
        def createPage(self):
            Label(self).grid(row=0, stick=W, pady=10)
            
            Label(self, text = '学号: ').grid(row=1, stick=W, pady=10)
            self.E1.grid(row=1, column=1, stick=E)
    
            Label(self, text = '科目: ').grid(row=2, stick=W, pady=10)
            self.E2.grid(row=2, column=1, stick=E)
    
            Button(self, text='删除',command=self.click).grid(row=6, column=1, stick=E, pady=10)  
      
      
    class ModifyFrame(Frame): # 继承Frame类  
        def __init__(self, master=None):  
            Frame.__init__(self, master)  
            self.root = master #定义内部变量root  
            self.E1 = Entry(self)
            self.E2 = Entry(self)
            self.E3 = Entry(self)
            self.E4 = Entry(self)
            self.E5 = Entry(self)
            self.createPage()  
    
        def Isspace(self,text):
            temp = 0
            for i in text:
               if not i.isspace():
                   temp = 1
                   break;
    
            if temp==1:
                return 0
            else:
                return 1
    
            
        def modify(self,name,num,course,score):
            temp = 0
            with open("成绩.csv","r",encoding="utf-8") as f:
                lines = f.readlines()
       
            with open("成绩.csv","w",encoding="utf-8") as f_w:
                for line in lines:
                    info = line[:-1].split(",")
                    if info[1]==num and info[2]==course:
                        temp = 1
                        f_w.write('{},{},{},{}\n'.format(name,num,course,score))
                        continue
                    f_w.write(line)
            if temp==0:
                messagebox.showinfo(title='提示', message ="没有该信息")
            else:
                messagebox.showinfo(title='提示', message ="修改成功")
            
        def click(self):
            name = self.E1.get()
            num = self.E2.get()
            course = self.E3.get()
            score = self.E4.get()
            if self.Isspace(name) or self.Isspace(num) or self.Isspace(course) or self.Isspace(score) :
                messagebox.showinfo(title='提示', message ="输入项为空")
            else:
                self.modify(name,num,course,score)
            
            
        def createPage(self):  
            Label(self).grid(row=0, stick=W, pady=10)
            Label(self, text = '姓名: ').grid(row=1, stick=W, pady=10)
            self.E1.grid(row=1, column=1, stick=E)
    
            Label(self, text = '学号: ').grid(row=2, stick=W, pady=10)
            self.E2.grid(row=2, column=1, stick=E)
    
            Label(self, text = '科目: ').grid(row=3, stick=W, pady=10) 
            self.E3.grid(row=3, column=1, stick=E) 
    
            Label(self, text = '成绩: ').grid(row=4, stick=W, pady=10)
            self.E4.grid(row=4, column=1, stick=E)       
            
            Button(self, text='修改',command=self.click).grid(row=6, column=1, stick=E, pady=10)  
    
    class QueryFrame(Frame): # 继承Frame类  
        def __init__(self, master=None):  
            Frame.__init__(self, master)  
            self.root = master #定义内部变量root
            self.E1 = Entry(self)
            self.E2 = Entry(self)
            self.createPage()  
    
        def Isspace(self,text):
            temp = 0
            for i in text:
               if not i.isspace():
                   temp = 1
                   break;
    
            if temp==1:
                return 0
            else:
                return 1
    
        def query(self,num,course):
            f = open('成绩.csv','r',encoding='utf-8')
            for line in f.readlines():
                info = line[:-1].split(",")
            if info[1]==num and info[2]==course:
                 messagebox.showinfo(title='结果', message ="姓名:"+info[0]+"\n学号:"+info[1]+"\n科目:"+info[2]+"\n成绩:"+info[3])
                 f.close()
                 return
    
            messagebox.showinfo(title='提示', message ="没有该信息")
            f.close()
            return        
            
            
        def click(self):
            num = self.E1.get()
            course = self.E2.get()
            if self.Isspace(num) or self.Isspace(course):
                messagebox.showinfo(title='提示', message ="输入项为空")
            else:
                self.query(num,course)
                
                
        def createPage(self):
            Label(self).grid(row=0, stick=W, pady=10)
            
            Label(self, text = '学号: ').grid(row=1, stick=W, pady=10)
            self.E1.grid(row=1, column=1, stick=E)
    
            Label(self, text = '科目: ').grid(row=2, stick=W, pady=10)
            self.E2.grid(row=2, column=1, stick=E)
    
            Button(self, text='查找',command=self.click).grid(row=6, column=1, stick=E, pady=10)  
      
    

     

     

     

    成绩.csv

    学生1,001,语文,100
    学生1,001,数学,100
    学生2,002,语文,80
    学生2,002,数学,100
    学生3,003,语文,100
    (最一行不要删!!!)

    代码很简单,不做分析。

    展开全文
  • python学生成绩管理系统创建

    千次阅读 2019-06-15 11:09:24
    python学生成绩管理系统创建 要求编写学生类,班级类,并在电脑运行生成表单,输入一个数字,得到对应的结果。 输出样式 代码如下 学生类 class Student: def __init__(self,sno,name,english,math): self.sno=...
  • /usr/bin/env python#manage the grade of studentdefinit(date):date=[[],[],[],[],[]]returndatedefstore(date):ID=raw_input("Please your ID:")name=raw_input("Please your name:")engli.....
  • 讲起学生成绩管理系统,从大一C语言的课程设计开始,到大二的C++课程设计都是这个题,最近在学树莓派,好像树莓派常用Python编程,于是学了一波Python,看了一点基本的语法想写点东西练下手。开发环境:Ubuntu+...
  • 讲起学生成绩管理系统,从大一C语言的课程设计开始,到大二的C++课程设计都是这个题,最近在学树莓派,好像树莓派常用Python编程,于是学了一波Python,看了一点基本的语法想写点东西练下手。开发环境:Ubuntu+...
  • '''----------------------------学生成绩系统---------------------------------------------'''class Student:def __init__(self,No,Name,Gender,Age):self.No=Noself.Name=Nameself.Gender=Genderself.Age=Agedef...
  • 本文实例为大家分享了python Tkinter版学生管理的具体代码,供大家参考,具体内容如下Tkinter是python自带的UI包,无需下载,只需要导入界面效果如下:python的pc端界面还是可以的,较为美观!页面较为粗狂,为经过...
  • 学生成绩管理系统功能:增.删.改.查.排序.这五个部份组成.均由单独的函数完成.其中信息的存取均以字典形式表达.#student_info.py#插入学生信息def input_student():infos=[]while True:n=input("请输入学生...
  • 本文实例为大家分享了Python实现GUI学生信息管理系统的具体代码,供大家参考,具体内容如下项目环境:软件环境:OS:RedHat6.3Lib:PygtkLanguage:PythonSupport tool:Glade3项目简述:①Glade3设计用户的登录窗口,...
  • /usr/bin/env python#manage the grade of studentdefinit(date):date=[[],[],[],[],[]]returndatedefstore(date):ID=raw_input('Please your ID:')name=raw_input('Please your name:')english=raw_input('Please.....
  • from tkinter import *from tkinter.messagebox import *import sqlite3from tkinter import ttkdbstr = "H:mydb.db"root = Tk()root.geometry('700x1000')root.title('学生管理系统')Label(root, text="学号:")....
  • 本文实例为大家分享了Python实现GUI学生信息管理系统的具体代码,供大家参考,具体内容如下项目环境:软件环境:OS:RedHat6.3Lib:PygtkLanguage:PythonSupport tool:Glade3项目简述:①Glade3设计用户的登录窗口,...
  • #!/usr/bin/env python #-*- coding:utf-8 -*- # file:p6.py # author:ytytyt # datetime:2021/4/22 21:04 # software: PyCharm ''' this is function...# 用面向对象, 实现一个学生Python成绩管理系统; # 学.
  • 次 日期:2019年11月5日【下载文档: python+mysql实现学生信息查询系统.txt 】(友情提示:右键点上行txt文档名->目标另存为)python+mysql实现学生信息查询系统本文实例为大家分享了python mysql学生信息查询系统的...
  • 1、关于学生成绩管理系统的基本要求 (1)功能要求:可以管理个人中心、学生管理、教师信息管理、科目名称管理、成绩信息管理、课程学习管理、系统管理、我的收藏管理、课程信息管理等功能模块。 (2)性能:在不同...
  • # coding=gbk import pymysql def createTable(): try: con = pymysql.connect(host="127.0.0.1", port=3306, user="root", password="", db="students",charset="utf8") print("连接成功") ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 391
精华内容 156
关键字:

python学生成绩管理系统

python 订阅