python写一个学生管理系统小程序

数据存储格式(列表里存储字典的形式):

[{'name': '张三', 'age': '20', 'city': '广州'}]

使用的基本数据类型:

(1)列表

students = [ ]用于存储所有学生信息

(2)字典

student_message = {}用于存储用户输入的信息加入students列表中

(3)字符串

用户所输入的信息都是字符串

find_student函数:

用于在students列表中查找特定名字的学生,遍历students列表,如果找到名字匹配的学生,返回该学生的字典,如果没有找到匹配的学生,返回None。主要用在主循环体删除和修改部分,来查找用户输入的学生姓名。

源码如下:

# 学生信息管理系统
def find_student(name):
    for student in students:
        if student["name"] == name:
            return student
    return None
students = []
#主循环体
while True:
    print("------------学生信息管理-----------------")
    print("1. 增:添加学生信息")
    print("2. 删:删除学生信息")
    print("3. 改:修改学生信息")
    print("4. 查:查询学生信息")
    print("5. 退出:退出程序")
    print("---------------------------------------")
    choice = input("请输入您的选择:")
    if choice == "1":
        student_message = {"name": input("请输入学生姓名:"), "age": input("请输入学生年龄:"),
                           "city": input("请输入学生城市:")}
        students.append(student_message)
        print("学生信息添加成功!")
        print(students)
    elif choice == "2":
        print(students)
        name = input("请输入要删除的学生姓名:")
        student = find_student(name)
        if student:
            students.remove(student)
            print("学生信息删除成功!")
            print(students)
        else:
            print("没有这个学生信息!")

    elif choice == "3":
        name = input("请选择你要修改的学生名字对象,名字不可修改,如果要修改名字可以选择删除2:")
        student = find_student(name)
        if student:
            new_age = input("请输入新的年龄:")
            new_city = input("请输入新的城市:")
            student["age"] = new_age
            student["city"] = new_city
            print("学生信息修改成功!")
            print(students)
        else:
            print("没有这个学生信息!")

    elif choice == "4":
        print("---------学生信息如下-----------")
        print(students)
        print("-----------------------------")
    elif choice == "5":
        break
    else:
        print("没有这个选项!请重新输入!")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值