1 importtime2 importos3
4 #定义一个列表,用来存储所有的学生信息(每个学生是一个字典)
5 stu_info =[]6
7 #打印操作提示命令的函数
8 defprint_menu():9 print("---------------------------")10 print("学生管理系统 V1.0")11 print("1:添加学生")12 print("2:删除学生")13 print("3:修改学生")14 print("4:查询学生")15 print("5:显示所有学生")16 print("6:保存数据")17 print("7:退出系统")18 print("---------------------------")19
20 defadd_info():21 """添加学生信息"""
22 global stu_info #学生信息列表成为全局变量
23
24 add_name = input("请输入姓名:")25 add_tel = input("请输入电话号码:")26 add_qq = input("请输入QQ:")27
28 #判断是否可以添加(所要添加的名字在列表中没有才可以添加)
29 for info instu_info:30 if info['name'] ==add_name:31 print("此用户名已经被占用,请重新输入")32 return #如果一个函数只有 return ,就相当于让函数结束,没有返回值
33
34 #定义一个字典,用来存储添加的学生信息
35 info ={}36
37 #向字典中添加数据
38 info["name"] =add_name39 info["tel"] =add_tel40 info["qq"] =add_qq41
42 #向列表中添加这个字典
43 stu_info.append(info)44 print("添加成功,按6保存后按5查看")45
46 defdel_info():47 """删除学生信息"""
48 globalstu_info49
50 del_id = int(input("请输入要删除的序号:"))51 #判断是否可以删除,(删除的学号范围限制)
52 if 0 <= del_id
60 defmodify_info():61 """修改学生信息"""
62 globalstu_info63
64 modify_id = int(input("请输入要修改的序号:"))65 #判断是否可以修改(输入的学号范围限制)
66 if 0 <= modify_id
69 (stu_info[modify_id]["name"], stu_info[modify_id]["tel"], stu_info[modify_id]["qq"]))70 mod_info = input("您要修改的信息是:")71 stu_info[modify_id][mod_info] = input("请输入新的%s:" %mod_info)
75 print("修改成功,按6保存后按5查看")76 else:77 print("输入序号有误:请重新输入")78
79 defquery_info():80 """查询学生信息"""
81 query_name = input("请输入要查询学生姓名:")82 for info instu_info:83 if info["name"] ==query_name:84 print("查询到的信息如下")85 print("name:%s,tel:%s,QQ:%s" % (info["name"], info["tel"], info["qq"]))
break # 不使用break退出循环,else后的语句一定被打印86 else:87 print("没有您要找的信息")88
89 defshow_all():90 """显示所有学生信息"""
91 print("序号\t\t姓名\t\t手机号\t\tQQ")92 i =093 for info instu_info:94 print("%d\t\t%s\t\t%s\t\t%s" % (i, info['name'], info['tel'], info['qq']))95 i += 1
96
97 defsava_data():98 """保存数据"""
99 f = open("info.txt", 'w')100 f.write(str(stu_info))101 f.close()102
103 defload_data():104 """加载数据"""
105 globalstu_info106 f = open("info.txt")107 content =f.read()108 stu_info =eval(content)109 f.close()110
111 defmain():112 """用来控制整个流程"""
113
114 #加载数据(一次即可)
115 load_data()116
117 whileTrue:118 #1,打印功能
119 print_menu()120 #2,获取用户的选择
121 num=input("请输入要进行的操作(数字):")122 #3,根据用户的选择,做相应的事情
123 if num == '1':124 add_info()125 elif num == '2':126 del_info()127 elif num == '3':128 modify_info()129 elif num == '4':130 query_info()131 elif num == '5':132 show_all()133 elif num == '6':134 sava_data()135 elif num == '7':136 #退出系统
137 exit_flag = input("确定要退出吗?yes or no")138 if exit_flag == 'yes':139 break
140 else:141 print("请输入正确的操作序号:")142
143 # input("按回车键继续...")144
145 #程序的开始
146 main()
准备:
需要准备一个 info.txt 文件,并且 在其中写入 一对 [ ]
操作演示:
①添加学生
C:\Users\高萍\AppData\Local\Programs\Python\Python37\python.exe C:/Users/高萍/Desktop/python/寒假直播课/code/学生管理系统(文件版).py
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):1
请输入姓名:张三
请输入电话号码:12345678
请输入QQ:zhangsan123
添加成功,按6保存后按5查看
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):6
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):
②删除学生
C:\Users\高萍\AppData\Local\Programs\Python\Python37\python.exe C:/Users/高萍/Desktop/python/寒假直播课/code/学生管理系统(文件版).py
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
1李四12345lisi123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):2
请输入要删除的序号:1
确定删除?yes or no:yes
删除成功,按6保存后按5查看
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):6
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):
③修改学生
C:\Users\高萍\AppData\Local\Programs\Python\Python37\python.exe C:/Users/高萍/Desktop/python/寒假直播课/code/学生管理系统(文件版).py
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
1jack123jack123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):3
请输入要修改的序号:1
你要修改的信息是:
name:jack,tel:123,QQ:jack123
您要修改的信息是:name
请输入新的name:sally
修改成功,按6保存后按5查看
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):6
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
1sally123jack123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):
④查询学生
C:\Users\高萍\AppData\Local\Programs\Python\Python37\python.exe C:/Users/高萍/Desktop/python/寒假直播课/code/学生管理系统(文件版).py
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
1sally123jack123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):4
请输入要查询学生姓名:张三
查询到的信息如下
name:张三,tel:12345678,QQ:zhangsan123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):
⑤显示所有学生
⑥保存数据
⑦退出系统
C:\Users\高萍\AppData\Local\Programs\Python\Python37\python.exe C:/Users/高萍/Desktop/python/寒假直播课/code/学生管理系统(文件版).py
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
1sally123jack123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):7
确定要退出吗?yes or no:yes
Process finished with exit code 0
若想要修改多个信息
1 importtime2 importos3
4 #定义一个列表,用来存储所有的学生信息(每个学生是一个字典)
5 stu_info =[]6
7 #打印操作提示命令的函数
8 defprint_menu():9 print("---------------------------")10 print("学生管理系统 V1.0")11 print("1:添加学生")12 print("2:删除学生")13 print("3:修改学生")14 print("4:查询学生")15 print("5:显示所有学生")16 print("6:保存数据")17 print("7:退出系统")18 print("---------------------------")19
20 defadd_info():21 """添加学生信息"""
22 global stu_info #学生信息列表成为全局变量
23
24 add_name = input("请输入姓名:")25 add_tel = input("请输入电话号码:")26 add_qq = input("请输入QQ:")27
28 #判断是否可以添加(所要添加的名字在列表中没有才可以添加)
29 for info instu_info:30 if info['name'] ==add_name:31 print("此用户名已经被占用,请重新输入")32 return #如果一个函数只有 return ,就相当于让函数结束,没有返回值
33
34 #定义一个字典,用来存储添加的学生信息
35 info ={}36
37 #向字典中添加数据
38 info["name"] =add_name39 info["tel"] =add_tel40 info["qq"] =add_qq41
42 #向列表中添加这个字典
43 stu_info.append(info)44 print("添加成功,按6保存后按5查看")45
46 defdel_info():47 """删除学生信息"""
48 globalstu_info49
50 del_id = int(input("请输入要删除的序号:"))51 #判断是否可以删除,(删除的学号范围限制)
52 if 0 <= del_id
60 defmodify_info():61 """修改学生信息"""
62 globalstu_info63
64 modify_id = int(input("请输入要修改的序号:"))65 #判断是否可以修改(输入的学号范围限制)
66 if 0 <= modify_id
69 (stu_info[modify_id]["name"], stu_info[modify_id]["tel"], stu_info[modify_id]["qq"]))70 #mod_info = input("您要修改的信息是:")
71 #stu_info[modify_id][mod_info] = input("请输入新的%s:" % mod_info)
72 stu_info[modify_id]['name'] = input("请输入新的姓名:")
73 stu_info[modify_id]['tel'] = input("请输入新的电话:")
74 stu_info[modify_id]['QQ'] = input("请输入新的QQ")75 print("修改成功,按6保存后按5查看")76 else:77 print("输入序号有误:请重新输入")78
79 defquery_info():80 """查询学生信息"""
81 query_name = input("请输入要查询学生姓名:")82 for info instu_info:83 if info["name"] ==query_name:84 print("查询到的信息如下")85 print("name:%s,tel:%s,QQ:%s" % (info["name"], info["tel"], info["qq"]))86 break #如果不使用break结束循环,else后的语句一定会被打印
87 else:88 print("没有您要找的信息")89
90 defshow_all():91 """显示所有学生信息"""
92 print("序号\t\t姓名\t\t手机号\t\tQQ")93 i =094 for info instu_info:95 print("%d\t\t%s\t\t%s\t\t%s" % (i, info['name'], info['tel'], info['qq']))96 i += 1
97
98 defsava_data():99 """保存数据"""
100 f = open("info.txt", 'w')101 f.write(str(stu_info))102 f.close()103
104 defload_data():105 """加载数据"""
106 globalstu_info107 f = open("info.txt")108 content =f.read()109 stu_info =eval(content)110 f.close()111
112 defmain():113 """用来控制整个流程"""
114
115 #加载数据(一次即可)
116 load_data()117
118 whileTrue:119 #1,打印功能
120 print_menu()121 #2,获取用户的选择
122 num=input("请输入要进行的操作(数字):")123 #3,根据用户的选择,做相应的事情
124 if num == '1':125 add_info()126 elif num == '2':127 del_info()128 elif num == '3':129 modify_info()130 elif num == '4':131 query_info()132 elif num == '5':133 show_all()134 elif num == '6':135 sava_data()136 elif num == '7':137 #退出系统
138 exit_flag = input("确定要退出吗?yes or no:")139 if exit_flag == 'yes':140 break
141 else:142 print("请输入正确的操作序号:")143
144 #input("按回车键继续...")
145
146 #程序的开始
147 main()
演示:
C:\Users\高萍\AppData\Local\Programs\Python\Python37\python.exe C:/Users/高萍/Desktop/python/寒假直播课/code/学生管理系统(文件版).py
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
1sally123jack123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):3
请输入要修改的序号:1
你要修改的信息是:
name:sally,tel:123,QQ:jack123
请输入新的姓名:sally2
请输入新的电话:1234
请输入新的QQsally123
修改成功,按6保存后按5查看
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):6
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):5
序号姓名手机号QQ
0张三12345678zhangsan123
1sally21234jack123
---------------------------
学生管理系统 V1.0
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:显示所有学生
6:保存数据
7:退出系统
---------------------------
请输入要进行的操作(数字):