本文实例为大家分享了python实现学生成绩测评系统的具体代码,供大家参考,具体内容如下
1、问题描述(功能要求):
根据实验指导书要求,完成相关软件系统的设计,要求内容翔实,条理清晰,图文并茂(流程图),主要(关键代码)须有详细注释,写清楚测试结果,分析存在的问题:
1)通过类的知识实现学生成绩信息(学号、姓名、院系、三门课成绩、考试平均成绩、同学互评分、任课教师评分、综合测评总分,其中综合测评总分由:考试平均成绩70%,同学互评分10%,任课教师评分20%,);
2)能够实现学生成绩信息的保存和读取(如果使用数据库存取信息可加分);
3)实现所有相关信息的输入、输出、查找、删除、修改等功能;
4)系统界面应至少实现控制台界面(另外使用桌面窗体界面可加分):
2、问题的解决方案:
根据系统功能要求,可以将问题解决分为以下步骤:
(1)分析系统中的相关功能和信息的关系;
(2)根据问题描述,设计数据访问流程和访问界面(控制台界面);
(3)完成类中各个成员函数的定义;
(4)功能调试;
(5)完成系统总结报告以及系统使用说明书。
继python汽车系统我接着比葫芦照瓢搞了一个学生信息管理系统:
具体实现就简单点说:
首先我创建一个全局变量存学生的所有信息
添加时我先把每次的信息添加进一个列表然后再把这个列表添加进全局变量的列表里面
删除就是遍历列表然后查询学号对应如果相同就调用del函数进行整行删除即可
修改和删除操作差别不大一个是del一个是直接等于要修改的地方
显示就是遍历该列表输出即可
保存数据就是open(“文件目录”, 'r")存取不覆盖存取
具体实现就说这么多运行案例就不一一运行了实践证明是可以的
import os
def printwindows():
print('='*30)
print('学生信息管理系统V1.0')
print('1.添加学生信息')
print('2.删除学生信息')
print('3.修改学生信息')
print('4.显示所有学生信息')
print('5.保存数据')
print('0.退出系统')
print('='*30)
students = []
def add_student():
while 1:
os.system("cls")
student = []
student_name = input("请输入学生姓名:")
student_id = input("请输入学生学号:")
student_xingbie = input("请输入学生性别:")
student_age = input("请输入学生年龄:")
student_pione = input("请输入学生电话:")
student.append(student_name)
student.append(student_id)
student.append(student_xingbie)
student.append(student_age)
student.append(student_pione)
students.append(student)
n = input("是否继续添加?y or n:")
if n == "n":
break
def del_student():
while 1:
del_student_id = input("请输入要删除的学生学号:")
for student in students:
if student[1] == del_student_id:
del student
print("删除成功!")
break
n = input("是否继续添加?y or n:")
if n == "n":
break
def updata_student():
while 1:
updata_student_id = input("请输入你要更改的学生学号:")
for student in students:
if student[1] == updata_student_id:
flag = input("选择你要更改的学生信息:1.姓名,2.学号,3.性别,4.年龄,5.电话:")
if flag == 1:
name = input("请输入你要换成的名字:")
student[0] = name
elif flag == 2:
student_id = input("请输入你要换成的学号:")
student[1] = student_id
elif flag == 3:
student_xinbie = input("请输入你要换成的性别:")
student[2] = student_xinbie
elif flag == 4:
student_age = input("请输入你要换成的年龄:")
student[3] = student_age
elif flag == 5:
student_pione = input("请输入你要换成的电话:")
student[4] = student_pione
else :
pass
n = input("是否继续添加?y or n:")
if n == "n":
break
def show_student():
print(" 学生信息")
print("姓名 学号 性别 年龄 电话")
for student in students:
print(student[0] + " " + student[1] + " " + student[2] + " " + student[3] + " " + student[4])
os.system("pause")
def read_in_file():
with open("student_data.txt", 'a') as f:
for student in students:
f.write(student[0] + " " + student[1] + " " + student[2] + " " + student[3] + " " + student[4] + '\n')
print("保存成功!")
def main():
while(1):
os.system("cls")
printwindows()
print("请输入你要执行的代码:")
n = int(input())
if n == 1:
add_student()
elif n == 2:
del_student()
elif n == 3:
updata_student()
elif n == 4:
show_student()
elif n == 5:
read_in_file()
else:
break
if __name__ == '__main__':
main()
更多学习资料请关注专题《管理系统开发》。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]