需求设计:
1.添加学生的成绩信息
2.学生信息保存在文件夹中
3.修改及删除学生信息
4.查询学生的信息
5.根据学生的成绩进行排名
6.计算总成绩进行排列
基本系统设定
模块一:
学生成绩维护部分
1.录入学生信息
2.删除学生信息
3.修改学生信息
模块二:
查询/统计模块
1.按姓名查找
2.按学号查找
3查询显示所有学生的信息
4.统计学生总人数
模块三:
排序:
1。每门程序排列
2.综合成绩排列
代码:
import pandas as pd
df=pd.read_excel(r"C:\Users\Administrator\Desktop\3.xlsx")
def increase(name,num,grade1,grade2):#增加
df.loc[len(df)+1]={'学生姓名':name,'学号':num,'语文成绩':grade1,"数学成绩":grade2}
def readexcel():#读取
print(df)
def exchange(name,grade1,grade2):#修改
for i in df.index:
if df.loc[i,'学生姓名']==name:
df.loc[i,'语文成绩']=grade1
df.loc[i,'数学成绩']=grade2
break
def dell(name):#删除
for i in df.index:
if df.loc[i,'学生姓名']==name:
df1=df.drop(i)
return df1
def find_name(name):#按姓名查找
for i in df.index:
if df.loc[i,'学生姓名']==name:
print(df.loc[i])
def find_num(num):#按学号查找
for i in df.index:
if df.loc[i,'学号']==num:
print(df.loc[i])
def count():#学生总人数
print("学生总人数是",len(df))
def sort_sub(sub):#按学科成绩排序
df3=df.sort_values(by=sub,ascending=False)
return df3
def sort():#总成绩。方法是:(新建一个表加一列总成绩进行排序,再删除这一列)
df3=df
for i in df3.index:
df3.loc[i,'总成绩']=df3.loc[i,'语文成绩']+df3.loc[i,'数学成绩']
df3=df3.sort_values(by="总成绩",ascending=False)
del df3['总成绩']
return df3
readexcel()
increase('马六',4,92,98)
readexcel()
exchange('马六',97,99)
readexcel()
df=dell('王五')
readexcel()
find_name('马六')
find_num(4)
count()
df=sort_sub("语文成绩")
readexcel()
df=sort()
readexcel()
EXCEL内容:
(文件损坏了,没法截图)
反正就四列,学生姓名,学号,语文成绩,数学成绩
返回到excel的代码没写()