python课程设计学生成绩管理系统结尾加代码Word格式.docx
《python课程设计学生成绩管理系统结尾加代码Word格式.docx》由会员分享,可在线阅读,更多相关《python课程设计学生成绩管理系统结尾加代码Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
![python课程设计学生成绩管理系统结尾加代码Word格式.docx](https://file1.bdocx.com/fileroot1/2022-12/30/321ba1e1-0a71-4f78-93ea-8ba7c989dd89/321ba1e1-0a71-4f78-93ea-8ba7c989dd891.gif)
三、程序运行截图:
1.登陆学生信息管理系统
管理员登录界面:
学生登陆界面:
2.先输入数字5查询已添加的学生信息
输入数字6查找挂科学生信息
3.输入数字7按照分数排序
4.再次添加学生信息,查询学生信息
5.先输入数字4修改学生信息,然后输入要修改的学生学号3
6、输入5查询所有的学生信息。
7、输入数字2删除学号为3的学生信息,再输入数字5显示全部学生信息
四、总结:
1.练习了数据库的打开,输入,修改和删除。
2.了解了数据库的基本管理方法。
3.熟悉python和相关软件的基本操作
4.基于本学期所学python知识,熟练应用掌握,制作符合要求的学生成绩管理系统。
5.会对程序运行中错误代码进行分析,找出合理解决方案。
在完成课设的过程,要先下载Python3.7和JetBrainsPyCharm和MySQLWorkbench8.0,因为第一次接触这几个软件,好多知识不太懂,所以上网查资料,去图书馆查资料,多亏了王老师不厌其烦地讲解,以及同学们的帮助,在今后的Python学习中,我要再接再厉,稳扎稳打,切实提高自己的专业能力。
frompymysqlimport*
'
菜单栏'
defmenu():
print('
\n*******************************************'
)
\n**********请选择你的操作*************'
************1.查询全体学生信息*************'
************2.新增学生信息*************'
************3.修改学生信息*************'
************4.删除学生信息*************'
************5.查询挂科学生*************'
************6.查询成绩排名*************'
************0.按任意键退出*************'
显示所有学生信息'
defsearchAll():
cn=connect(host='
127.0.0.1'
port=3306,user='
root'
password='
123456'
db='
st'
cur=cn.cursor()
sql=str('
select*fromstr'
cur.execute(sql)
data=cur.fetchall()
foreachindata:
print(each)
cur.close()#关闭游标
cn.close()#释放数据库资源
添加学生信息'
defaddstu():
a=int(input('
学号:
))
b=input('
姓名:
c=int(input('
语文成绩:
d=int(input('
数学成绩:
e=int(input('
英语成绩:
))#需要判断看输入是否合法
cur=cn.cursor()
sql="
insertintostrvalues(%d,'
%s'
%d,%d,%d)"
%(a,b,c,d,e)
mit()
searchAll()
修改学生信息'
defupdateStu():
请输入您想修改学生的学号:
)#需要加判断,可与addStu()配合,多一条判断,学生是否在其中
a=int(input('
b=input('
c=int(input('
))#需要判断看输入是否合法
sql="
updatestrsetsn='
cs='
%d'
ms='
es='
wherestn='
"
%(b,c,d,e,a)
删除学生信息'
defdeleteStu():
dst=int(input('
请输入您想删除学生的学号:
'
a=int(input("
确定删除请按1"
))'
if(a):
deletefromstrwherestn=%f"
%(dst)
else:
print("
您取消了删除!
)'
挂科学生名单'
deffailedStu():
\n语文挂科学生名单:
sqlChinese="
selectsnfromstrwherecs<
60"
cur.execute(sqlChinese)
failedChinese=cur.fetchall()
print(failedChinese)
\n数学挂科学生名单:
sqlMath="
selectsnfromstrwherems<
cur.execute(sqlMath)
failedMath=cur.fetchall()
print(failedMath)
\n英语挂科学生名单:
sqlEnglish="
selectsnfromstrwherees<
cur.execute(sqlEnglish)
failedEnglish=cur.fetchall()
print(failedEnglish)
按平均成绩降序排名'
defrankStu():
sqlRank="
SELECTsn,cs,ms,es,(cs+ms+es)/3ASAverageFROM`str`ORDERBYAverageDESC;
cur.execute(sqlRank)
rank=cur.fetchall()
foreachinrank:
身份判断'
defidentity():
try:
administrator={"
l"
:
123456,"
ll"
123456,}
user={"
student1"
111111,"
student2"
111111}
loginname=input('
请输入用户名:
loginpwd=input('
请输入密码:
ifloginnameinadministrator:
ifloginpwd=="
123456"
**************尊敬的管理员您好!
*****************"
returnTrue
else:
密码错误,请重新输入!
identity()
elifloginnameinuser:
ifloginpwd=="
111111"
***************亲爱的同学,你好!
****************"
returnFalse
**********非法用户,请检查您的用户名!
finally:
pass
主函数'
print('
*******************欢迎使用学生信息管理系统**********************'
ifidentity():
while(True):
menu()
ifa==1:
elifa==2:
addstu()
elifa==3:
updateStu()
elifa==4:
deleteStu()
elifa==5:
failedStu()
elifa==6:
rankStu()
********************您已退出学生信息管理系统*******************"
break