没有界面的学生管理系统

学生管理系统
#Mighttf
class studentSys(object):
def init(self):
# 全局变量
self.students = []
“打印输入提示信息”
students=[]
def print_menu(self):
# \t : 横向制表符
print("=" * 50 +
“\n\t\t学生管理系统1.00版本” +
“\n\t\t1:添加学生信息” +
“\n\t\t2:删除学生信息” +
“\n\t\t3:修改学生信息” +
“\n\t\t4:查找学生信息” +
“\n\t\t5:显示学生信息” +
“\n\t\t6:退出学生管理系统\n” +
“=” * 50)

# 添加学生信息的函数
def add_info(self):
    # 修改全局变量
    # global students
    # 字典
    student = {}
    name = input("请输入要添加学生的姓名:")
    age = input("请输入要添加学生的年龄:")
    sex = input("请输入要添加学生的性别:")
    phone = input("请输入要添加学生的电话:")
    QQ = input("请输入要添加学生的QQ:")
    # 往字典里添加输入的数据
    student["name"] = name
    student["age"] = age
    student["sex"] = sex
    student["phone"] = phone
    student["QQ"] = QQ
    # 把字典添加到列表(末尾)中去
    self.students.append(student)
    self.save_info()

# 删除学生信息函数
def delete_info(self):
    name = input("请输入要删除的学生姓名:")
    for student in self.students:
        if name == student.get("name"):
            self.students.remove(student)
    self.save_info()
    self.show_info()

# 修改学生信息函数
def modify_info(self):
    name = input("请输入要修改学生的姓名:")
    for student in self.students:
        if name == student.get("name"):
            info = input("请输入要修改的信息标题:")
            if info == "name":
                new_name = input("请输入新的姓名:")
                student["name"] = new_name
            elif info == "age":
                new_age = input("请输入新的年龄:")
                student["age"] = new_age
            elif info == "sex":
                new_sex = input("请输入新的性别:")
                student["sex"] = new_sex
            elif info == "phone":
                new_phone = input("请输入新的电话:")
                student["phone"] = new_phone
            elif info == "QQ":
                new_QQ = input("请输入新的QQ:")
                student["QQ"] = new_QQ
            else:
                print("请输入含有的信息标题")
    self.save_info()
    self.show_info()

# 查找学生信息函数
def find_info(self):
    name = input("请输入要查找的学生姓名:")
    flag = 0  # 找到一个就是找到了
    for student in self.students:
        if name == student.get("name"):
            print(student)
            print("\t" + student["name"] + \
                  "\t\t" + student["age"] + \
                  "\t\t" + student["sex"] + \
                  "\t\t" + student["phone"] + \
                  "\t\t" + student["QQ"])
            flag = 1
    # 循环结束后判断
    if flag == 0:
        print("无此人信息")

# 显示学生信息函数
def show_info(self):
    print("\t\t\t\t当前学生信息\n" + \
          "-" * 80 + "\n\t姓名\t\t年龄\t\t性别\t\t电话\t\tQQ")
    for student in self.students:
        print("\t" + student["name"] + \
              "\t\t" + student["age"] + \
              "\t\t" + student["sex"] + \
              "\t\t" + student["phone"] + \
              "\t\t" + student["QQ"])

    print("-" * 80, "\n")

# 保存信息
def save_info(self):
    f = open("students.txt", "w")  # 每次保存都会覆盖,覆盖保存w
    f.write(str(self.students))  # 保存
    f.close()  # 关闭资源

# 读取运行时的信息
def load_info(self):
    f = open("students.txt", "a+")
    f.seek(0)
    content = f.read()
    if len(content) > 0:
        self.students = eval(content)
    f.close()  # 关闭资源

# 定义一个入口函数
def main(self):
    self.print_menu()
    self.load_info()
    while True:
        # 输入的内容都当做字符串
        input_num = input("请按照提示输入相应的指令:")

        # 判断用户输入的内容
        if input_num == "1":
            # print("增加\n")
            self.add_info()
        elif input_num == "2":
            # print("删除\n")
            self.delete_info()
        elif input_num == "3":
            # print("修改\n")
            self.modify_info()
        elif input_num == "4":
            # print("查找\n")
            self.find_info()
        elif input_num == "5":
            # print("显示\n")
            self.show_info()
        elif input_num == "6":
            print("退出\n")
            break
        else:
            print("请不要瞎玩,这里需要输入对应的数字!\n")

# 创建实例对象,调用方法
studentSys().main()

截图如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mighttf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值