最简单的python学生管理系统

定义一个main函数,用于控制整个程序的流程。在该函数中,使用一个无限循环保证程序你一直接受用户的输入。在循环中,打印功能菜单提示用户,之后获取用户的输入,并使用if-elif 语句区分不同序号所对应的功能,具体代码如下。

student_list = []
def main():
	while True:
		print_menu()  #打印菜单
		key = input("请输入功能对应的数字:")#获得用户输入的序号
		if key=='1':#添加学生的信息
			add_info()
		elif key=='2':#删除学生的信息
			del_info()
		elif key=='3':#修改学生的信息
			modify_info()
		elif key=='4':#查看所有学生的信息
			show_infos()
		elif key=='0':#退出系统
			quit_confirm=input("亲,真的要退出么?(Y or N):")
			if quit_confirm =="Y":
				break#结束循环
			else:
				print("输入有误,请重新输入")

def print_menu():#打印菜单
    print('1. 添加学生信息')
    print('2. 删除学生信息')
    print('3. 修改学生信息')
    print('4. 查看所有学生信息')
    print('0. 退出系统')
    print('--------------------------------------------------------------------------')

def add_info():#添加学生的信息
    while True:
        id = input('请输入id(如1001):')
        if not id:
            break
        name = input('请输入姓名:')
        if not name:
            break
        try:
            score = int(input('请输入成绩:'))
        except:
            print('输入无效,不是整数类型,请重新输入')
            continue
        # 将录入的学生信息保存到字典中
        student = {'id': id, 'name': name, 'score': score}
        # 将学生信息添加到列表中
        student_list.append(student)
        answer = input('是否继续添加?y/n\n')
        if answer == 'y' or answer == 'Y':
            continue
        else:
            break
    print('学生信息录入完毕!!!')

def del_info():#删除学生的信息
    while True:
        student_id = input('请输入要删除的学生的id:')
        i = -1  #下标指向值
        for stu_dict in student_list:
            i += 1  #每遍历一次,下标加一
            if student_id in stu_dict['id']:
                break #找到了该值,跳出循环
        del student_list[i]
        show_infos()  # 重新显示所有学生信息
        answer = input('是否继续删除?y/n\n')
        if answer == 'y' or answer == 'Y':
            continue
        else:
            break
            
def modify_info():#修改学生的信息
    while True:
        # 修改
        student_id = input('请输入要修改的学生的id:')
        flag = 0
        for line in student_list:
            if line['id'] == student_id:
                new_name = input('请输入修改后的姓名:')
                new_score = input('请输入修改后的成绩:')
                line['name'] = new_name
                line['score'] = int(new_score)
                flag = True
                break
        if flag:
            print("已修改!")
        else:
            print('输入的用户不存在!')
        show_infos()  # 重新显示所有学生信息
        # 询问是否要接着修改
        answer = input('是否修改其他学生信息?y/n\n')
        if answer == 'y' or answer == 'Y':
            continue
        else:
            break

def show_infos():#查看所有学生的信息
	print(student_list)

main()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ChaselWang

有用就点个赞吧

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

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

打赏作者

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

抵扣说明:

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

余额充值