一、用python编写的一个学生成绩管理系统
# -*- coding: cp936 -*-
class stuinfo:
def __init__(self):
self.stu=[{"sno":"1","sname":"姓名","chinesescore":64,"mathsscore":34,"englishscore":94,"computerscore":83},
{"sno":"2","sname":"姓名","chinesescore":44,"mathsscore":24,"englishscore":44,"computerscore":71},
{"sno":"3","sname":"姓名","chinesescore":74,"mathsscore":35,"englishscore":74,"computerscore":93},
{"sno":"4","sname":"姓名","chinesescore":94,"mathsscore":54,"englishscore":24,"computerscore":73}]
self.attribute={"sno":"学号",
"sname":"姓名",
"chinesescore":"语文成绩",
"mathsscore":"数学成绩",
"englishscore":"英语成绩",
"computerscore":"计算机成绩"
}
def _add(self):
'''添加'''
singleinfo={}
for i in self.attribute:
if "score" in i:
singleinfo[i]=int(raw_input(self.attribute[i]+"\n"))
else:
singleinfo[i]=raw_input(self.attribute[i]+"\n").strip()
self.stu.append(singleinfo)
print "添加成功ok"
for i in singleinfo:
print i,"=",singleinfo[i]
def _del(self):
"""删除学号为sno的记录"""
sno=raw_input("学号:\n")
self.stu.remove(self.__getinfo(sno))
print "删除成功ok"
def _update(self):
"""更新数据"""
sno=raw_input("学号\n").strip()
prefix="修改"
updateoperate={"1":"chinesescore",
"2":"mathsscore",
"3":"englishscore",
"4":"computerscore"}
for i in updateoperate:
print i,"-->",prefix+self.attribute[updateoperate[i]]
getoperatenum=raw_input("选择操作:\n")
if getoperatenum:
getnewvalue=int(raw_input("输入新的值:\n"))
record=self.__getinfo(sno)
record[updateoperate[getoperatenum]]=getnewvalue
print "修改"+record["sname"]+"的"+str(updateoperate[getoperatenum])+"成绩=",getnewvalue,"\n成功ok"
def _getinfo(self):
"""查询数据"""
while true:
print "1->学号查询 2->条件查询 3->退出"
getnum=raw_input("选择:\n")
if getnum=="1":
sno=raw_input("学号:\n")
print filter(lambda record:record["sno"]==sno,self.stu)[0]
elif getnum=="2":
print "chinesescore 语文成绩;","mathsscore 数学成绩;","englishscore 英语成绩;","computerscore 计算机成绩;"
print "等于 ==,小于 <, 大于 > ,大于等于 >=,小于等于<= ,不等于!="
print "按如下格式输入查询条件 eg: chinesescore>=60 "
expr=raw_input("条件:\n")
infos=self.__getinfo(expr=expr)
if infos:
print "共%d记录"%len(infos)
for i in infos:
print i
else:
print "记录为空"
elif getnum=="3":
break
else:
pass
def __getinfo(self,sno=none,expr=""):
"""查询数据
根据学号 _getinfo("111111")
根据分数 _getinfo("englishsorce>80")"""
if sno:
return filter(lambda record:record["sno"]==sno,self.stu)[0]
for operate in [">=",">","<=","<","==","!="]:
if operate in expr:
gradename,value=expr.split(operate)
return filter(lambda record: eval( repr(record[gradename.strip()])+operate+value.strip()) ,self.stu)
return {}
def _showall(self):
"""显示所有记录"""
for i in self.stu:
print i
@staticmethod
def test():
"""测试"""
_stuinfo=stuinfo()
while true:
print "1->录入数据 2->修改数据 3->删除数据 4->查询数据 5->查看数据 6->退出"
t=raw_input("选择:\n")
if t=="1":
print "录入数据"
_stuinfo._add()
elif t=="2":
print "修改数据"
_stuinfo._update()
elif t=="3":
print "删除数据"
_stuinfo._del()
elif t=="4":
print "查询数据"
_stuinfo._getinfo()
elif t=="5":
print "显示所有记录"
_stuinfo._showall()
elif t=="6":
break
else:
pass
if __name__=="__main__":
stuinfo.test()
二、python学生成绩管理系统简历怎么写
1、简历的开头应该简要介绍项目的背景,目的,功能和技术要点,例如本项目是使用python语言开发的一个学生成绩管理系统,旨在实现对学生信息和成绩的增删改查,导入导出,排序和统计等功能。本项目采用了面向对象的编程思想,设计了学生类和学生管理类,使用了os和re等内置模块,以及文件操作和异常处理等技术。
2、简历的主体应该详细描述项目的具体实现过程,包括各个模块的功能,业务流程,具体代码和运行效果等,例如本项目分为七个模块,录入学生信息模块,查找学生信息模块,删除学生信息模块,修改学生信息模块,对学生成绩排序模块,统计学生总人数模块和显示所有学生信息模块。每个模块都定义了相应的函数,并在主函数中调用。以下是各个模块的具体实现。
3、简历的结尾应该总结项目的收获,优点和不足,以及对未来改进的建议。
三、python成绩管理系统,修改成绩显示没有学生信息
信息输入错误。根据查询学生成绩管理系统得知,修改成绩没有显示是信息输入错误。正确步骤如下:def stu_change():stu_num = input("请输入要修改的学生学号:") if stu_num in stu_dict.keys(): # 先判断该学生是否在字典中 stu_update = input("请输入修改后的学生成绩:")stu_dict[stu_num] = stu_update print("修改成功!")else: print("未查询到该学生信息!")