学生管理系统面向对象版
"""
学生管理系统面向对象版
"""
"""
1.学生类
初始化的对象属性:name age id
2.管理系统类
添加,修改,删除,显示,界面,退出
字典定义在类的外面,键是学生的id,值是学生的信息,姓名,年龄
"""
class Student:
def __init__(self,name,age,id):
self.name = name
self.age = age
self.id = id
new_id = ""
new_name = ""
new_age = ""
class Sys:
def __init__(self):
pass
def print_info(self):
print("="*30)
print("欢迎使用学生管理系统")
print("1.添加学生信息")
print("2.删除学生信息")
print("3.查询学生信息")
print("4.修改学生信息")
print("5.显示所有学生信息")
print("6.退出")
print("="*30)
def get_info(self):
global new_age
global new_id
global new_name
new_name = input("请输入学生的姓名")
new_id = input("请输入学生的id")
new_age = input("请输入学生的年龄")
def add_student(self):
self.get_info()
# 实例化一个学生的对象为value
student[new_id] = Student(new_name,new_age,new_id)
# 这里显示的是以new_id为字典的键,学生的信息为值添加
print("ID:%s" % student[new_id].id,
"name:%s" % student[new_id].name,
"age:%s" % student[new_id].age)
def find_info(self):
find_id = input("请输入要查询的学号")
if find_id in student.keys():
print("ID:%s" % student[find_id].id,
"name:%s" % student[find_id].name,
"age:%s" % student[find_id].age)
else:
print("查无此人")
def alter_info(self):
alterID = input("请输入要修改学生的学号")
# self.get_info()
if alterID in student.keys():
del student[alterID]
self.get_info() # 调用学生信息的方法
student[new_id] = Student(new_name,new_age,new_id) # 再次添加一个学生的信息
def del_info(self):
delID = input("请输入删除学生的学号")
if delID in student.keys():
del student[delID]
def show_info(self):
for stu in student: # 通过key来获取value,每一个value都是学生对象
print("name:%s" % student[stu].name,
"ID:%s" % student[stu].id,
"age:%s" % student[stu].age)
for i in student.keys():
print(i)
student = {} # 全局变量
sys = Sys() # 实例化对象
while True: # 循环
sys.print_info()
choise = int(input("请输入要执行的操作"))
if choise == 1:
print("添加学生信息")
sys.add_student()
elif choise == 2:
print("删除学生信息")
sys.del_info()
elif choise == 3:
print("查询学生信息")
sys.find_info()
elif choise == 4:
print("修改学生信息")
sys.alter_info()
elif choise == 5:
print("查询学生的信息")
sys.show_info()
elif choise == 6:
num_1 = input("您确定要退出嘛?y/n")
if num_1 == "y":
print("退出")
break # 跳出循环
elif num_1 == "n":
continue # 继续执行该循环
你的意见促使我改变

浙公网安备 33010602011771号