选课管理系统
1.制作课程管理信息系统,是对学生信息的录入、删除、修改、查询等一系列操作,而系统先输出一段文字,操作者根据系统的提示来操作系统,调用指定的函数来实现所需要的操作,老师登录对学生信息进行录入、删除、修改、查询等一系列操作,学生登录是对个人的信息查询、修改等一系列操作。
老师的主要代码实现:student_sys类中:
add_student() #对学生信息的录入
def add_student(self):
student_name = input("输入学生姓名(账号):")
student_number = input("输入学生学号(密码):")
student_sex = input("输入学生性别:")
student_age = input("输入学生年龄:")
student_i=int(input("输入选了几门课:"))
for i in range(student_i):
student_course = input("输入学生的选课:")
student_sourse = input("输入课程的分数:")
acourse={"选课":student_course,"分数":student_sourse}
acourse_path="C:\\Users\\雷\\Desktop\\课设\\选课\\"+student_name
file_acourse=open(acourse_path,"a")
file_acourse.write(str(acourse))
file_acourse.write('\n')
file_acourse.close()
user_student={"账号":student_name,"密码":student_number}
file=open("C:\\Users\\雷\Desktop\\课设\\账号信息\\"+student_name,"w")
file.write(str(user_student))
file.close()
astudent={'姓名': student_name, "学号": student_number, "性别": student_sex, "年龄": student_age}
astudent_path="C:\\Users\\雷\Desktop\\课设\\学生信息\\"+student_name
file_astudent=open(astudent_path,"w")
file_astudent.write(str(astudent))
file_astudent.close()
del_student() #对学生信息的删除
del_name=input("删除该姓名学生的信息:")
student_list=os.listdir("C:\\Users\\雷\Desktop\\课设\\学生信息")
for j in student_list:
if j == del_name:
os.remove("C:\\Users\\雷\Desktop\\课设\\学生信息\\"+del_name)
os.remove("C:\\Users\\雷\\Desktop\\课设\\选课\\"+del_name)
print("删除成功")
break
else:print("没有这个人")
find_student() #查询学生信息
find_name=input("查询该姓名学生的信息:")
student_list = os.listdir("C:\\Users\\雷\Desktop\\课设\\学生信息")
for j in student_list:
if j == find_name:
file=open("C:\\Users\\雷\Desktop\\课设\\学生信息\\"+find_name)
for line in file:
print(line)
file.close()
file2 = open("C:\\Users\\雷\\Desktop\\课设\\选课\\" + find_name)
for line2 in file2:
print(line2,end="")
file2.close()
xiugai_student() #修改学生信息
def xiugai_student(self):
xiugai_name=input("修改该姓名学生的信息:")
student_list = os.listdir("C:\\Users\\雷\Desktop\\课设\\学生信息")
for i in student_list:
if i == xiugai_name:
os.remove("C:\\Users\\雷\Desktop\\课设\\学生信息\\" + xiugai_name)
os.remove("C:\\Users\\雷\\Desktop\\课设\\选课\\"+xiugai_name)
student_name=input("学生姓名修改为:")
student_number=input("学生学号修改为:")
student_sex=input("学生性别修改为:")
student_age=input("学生年龄修改为:")
student_i=int(input("修改成的科目数为:"))
for i in range(student_i):
student_course = input("修改学生的课程为:")
student_sourse = input("修改课程的分数为:")
acourse = {"选课": student_course, "分数": student_sourse}
acourse_path = "C:\\Users\\雷\\Desktop\\课设\\选课\\" + student_name
file_acourse = open(acourse_path, "a")
file_acourse.write(str(acourse))
file_acourse.write('\n')
file_acourse.close()
student ={'姓名': student_name, "学号": student_number, "性别": student_sex, "年龄": student_age}
student_path = "C:\\Users\\雷\Desktop\\课设\\学生信息\\" + student_name
file_student = open(student_path, "w")
file_student.write(str(student))
file_student.close()
print("修改完成")
break
else:print("没有这个人")
display_student() #显示所有学生的信息
student_list = os.listdir("C:\\Users\\雷\Desktop\\课设\\学生信息")
for j in student_list:
file = open("C:\\Users\\雷\Desktop\\课设\\学生信息\\" + j)
for line in file:
print(line)
file.close()
file2 = open("C:\\Users\\雷\\Desktop\\课设\\选课\\" + j)
for line2 in file2:
print(line2,end="")
file2.close()
av_student() #计算指定学生所有课程分数的平均值
def av_student(self):
student_list = os.listdir("C:\\Users\\雷\\Desktop\\课设\\选课")
j,g=0,0
student_av=input("输入求平均分数人的姓名:")
file_name="C:\\Users\\雷\\Desktop\\课设\\选课\\"+student_av
for i in student_list:
if i==student_av:
file_user=open(file_name)
for line in file_user.readlines():
line=eval(line)
line['分数']=int(line['分数'])
g=g+line['分数']
j=j+1
file_user.close()
print("输出所有学生课程分数的平均值:", g/j)
学生的主要代码实现:add类中
astudent(self,xiugai_name) #对个人信息的修改
def astudent(self,xiugai_name):
student_list = os.listdir("C:\\Users\\雷\Desktop\\课设\\学生信息")
for i in student_list:
if i == xiugai_name:
os.remove("C:\\Users\\雷\Desktop\\课设\\学生信息\\" + xiugai_name)
student_name=input("姓名修改为:")
student_number=input("学号修改为:")
student_sex=input("性别修改为:")
student_age=input("年龄修改为:")
student ={'姓名': student_name, "学号": student_number, "性别": student_sex, "年龄": student_age}
student_path = "C:\\Users\\雷\Desktop\\课设\\学生信息\\" + student_name
file_student = open(student_path, "w")
file_student.write(str(student))
file_student.close()
os.rename("C:\\Users\\雷\Desktop\\课设\\选课\\" + xiugai_name,
"C:\\Users\\雷\Desktop\\课设\\选课\\" + student_name)
print("修改完成")
break
find_student(self,find_name) #对个人信息的查询
def find_student(self,find_name):
student_list = os.listdir("C:\\Users\\雷\Desktop\\课设\\学生信息")
for j in student_list:
if j == find_name:
file=open("C:\\Users\\雷\Desktop\\课设\\学生信息\\"+find_name)
for line in file:
print(line)
file.close()
file2 = open("C:\\Users\\雷\\Desktop\\课设\\选课\\" + find_name)
for line2 in file2:
print(line2,end="")
file2.close()
av_student(self,student_av) #对查询自己所有课程的平均分数
def av_student(self,student_av):
student_list = os.listdir("C:\\Users\\雷\\Desktop\\课设\\选课")
j,g=0,0
file_name="C:\\Users\\雷\\Desktop\\课设\\选课\\"+student_av
for i in student_list:
if i==student_av:
file_user=open(file_name)
for line in file_user.readlines():
line=eval(line)
line['分数']=int(line['分数'])
g=g+line['分数']
j=j+1
file_user.close()
print("输出所有学生选课分数的平均值:", g/j)
main() #进行功能的实现
def main():
lu=部件.add()
co = student_sys()
j=input("是否需要注册教师信息Y/N:")
if j=="Y":
lu.add_teacher()
print("进行账号登录")
print("1-教师登录")
print("2-学生登录")
print("*" * 30)
while True:
user_type_select = input("请选择登录用户类型:")
while user_type_select == "1":
while True:
print("*****教师登录*****")
teacher_name = input("请输入账号名:")
teacher_number = input("请输入密码:")
file_root = open("C:\\Users\\雷\Desktop\\课设\\账号信息\\" + teacher_name)
root = eval(file_root.read())
if teacher_name == root["登录账号"] and teacher_number == root["密码"]:
print("登录成功")
file_root.close()
break
else:
print("登录失败")
co.show_menu()
while True:
n = int(input("请输入您要进行的操作编号:"))
if n == 1:
co.add_student()
elif n == 2:
co.del_student()
elif n == 3:
co.find_student()
elif n == 4:
co.xiugai_student()
elif n == 5:
co.av_student()
elif n == 6:
co.display_student()
elif n == 0:
co.exit_student()
else:
print("退出登录")
break
break
if user_type_select == "2":
while True:
print("*****学生登录*****")
student_name = input("请输入账号名:")
student_number = input("请输入密码:")
file_root1 = open("C:\\Users\\雷\Desktop\\课设\\学生信息\\" + student_name)
root1 = eval(file_root1.read())
if student_name == root1["姓名"] and student_number == root1["学号"]:
print("登录成功")
file_root1.close()
break
else:
print("登录失败")
print("*"*30)
print("1.修改个人信息:")
print("2.查找个人信息:")
print("3.显示个人课程分数的平均值:")
print("0.退出选课系统:")
print("其他.退出登录")
while True:
i=int(input("输入想操作的课程编号:"))
if i==1:
lu.astudent(student_name)
print("请重新登录")
break
elif i==2:
lu.find_student(student_name)
elif i==3:
lu.av_student(student_name)
elif i==0:
co.exit_student()
else:
print("退出登录")
break
break
def show_menu(self):对你进行指导操作
def show_menu(self):
print("*" * 30)
print("欢迎使用课程管理系统!")
print("1.添加学生信息(账号密码):")
print("2.删除学生信息:")
print("3.查找学生信息:")
print("4.修改学生信息:")
print("5.显示学生课程分数的平均值")
print("6.显示课程管理系统")
print("0.退出课程管理系统")
print("其他.退出登录")
感谢观看,如果对你有帮助请点个赞