赞
踩
首先,我们先写出整个系统的大致框架,如下:
- def print_info():
- print('-' * 20)
- print('欢迎登录学员管理系统')
- print('1: 添加学员')
- print('2: 删除学员')
- print('3: 修改学员信息')
- print('4: 查询学员信息')
- print('5: 显示所有学员信息')
- print('6: 退出系统')
- print('-' * 20)
-
-
- def main():
- while True:
- print_info()
- num = input('请输入您的选项:')
-
- if num == "1":
- pass
- elif num == "2":
- pass
- elif num == '3':
- pass
- elif num == '4':
- pass
- elif num == '5':
- pass
- elif num == '6':
- print("谢谢使用!!!")
- return
- else:
- print('输入的不正确!!!')
-
- input("请按回车继续!!!")
-
-
- if __name__ == '__main__':
- main()
接下来,我们实现第一个添加学生功能,如下:
- # 存储学生信息
- student_info_list = [{"name": "老王", "age": 18, "tel": 110},{"name": "老李", "age": 18, "tel": 120}]
-
-
- def print_info():
- """显示菜单"""
- print('-' * 20)
- print('欢迎登录学员管理系统')
- print('1: 添加学员')
- print('2: 删除学员')
- print('3: 修改学员信息')
- print('4: 查询学员信息')
- print('5: 显示所有学员信息')
- print('6: 退出系统')
- print('-' * 20)
-
-
- def add_student_info():
- """添加学生"""
- global student_info_list
-
- # 获取要添加的人的电话
- add_tel = int(input('请输入要添加的人的电话:'))
- # 判断是否存在这个学生
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == add_tel:
- print('此人已存在!!!')
- return
- # 确定了所有的学生的电话都不重复
- else:
- add_name = input("请输入要添加的人的姓名:")
- add_age = int(input("请输入要添加的人的年龄:"))
- # 存储新的学生的信息
- my_dict = {}
- my_dict["name"] = add_name
- my_dict["age"] = add_age
- my_dict["tel"] = add_tel
- # 添加到列表中
- student_info_list.append(my_dict)
-
- print('添加成功')
-
-
-
-
- def main():
- """主函数, 控制流程的"""
- while True:
- print_info()
- num = input('请输入您的选项:')
-
- if num == "1":
- add_student_info()
- elif num == "2":
- pass
- elif num == '3':
- pass
- elif num == '4':
- pass
- elif num == '5':
- show_all_info()
- elif num == '6':
- print("谢谢使用!!!")
- return
- else:
- print('输入的不正确!!!')
-
- input("请按回车继续!!!")
-
-
- if __name__ == '__main__':
- main()
添加信息之后,我们再编写显示所有学生的信息部分,如下:
- # 存储学生信息
- student_info_list = [{"name": "老王", "age": 18, "tel": 110}, {"name": "老李", "age": 18, "tel": 120}]
-
-
- def print_info():
- """显示菜单"""
- print('-' * 20)
- print('欢迎登录学员管理系统')
- print('1: 添加学员')
- print('2: 删除学员')
- print('3: 修改学员信息')
- print('4: 查询学员信息')
- print('5: 显示所有学员信息')
- print('6: 退出系统')
- print('-' * 20)
-
-
- def add_student_info():
- """添加学生"""
- global student_info_list
-
- # 获取要添加的人的电话
- add_tel = int(input('请输入要添加的人的电话:'))
- # 判断是否存在这个学生
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == add_tel:
- print('此人已存在!!!')
- return
- # 确定了所有的学生的电话都不重复
- else:
- add_name = input("请输入要添加的人的姓名:")
- add_age = int(input("请输入要添加的人的年龄:"))
- # 存储新的学生的信息
- my_dict = {}
- my_dict["name"] = add_name
- my_dict["age"] = add_age
- my_dict["tel"] = add_tel
- # 添加到列表中
- student_info_list.append(my_dict)
-
- print('添加成功')
-
-
- def show_all_info():
- """显示所有的学生信息"""
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- print("姓名\t年龄\t电话")
- for i in student_info_list:
- print(f"{i['name']}\t{i['age']}\t{i['tel']}")
-
-
- def main():
- """主函数, 控制流程的"""
- while True:
- print_info()
- num = input('请输入您的选项:')
-
- if num == "1":
- add_student_info()
- elif num == "2":
- pass
- elif num == '3':
- pass
- elif num == '4':
- pass
- elif num == '5':
- show_all_info()
- elif num == '6':
- print("谢谢使用!!!")
- return
- else:
- print('输入的不正确!!!')
-
- input("请按回车继续!!!")
-
-
- if __name__ == '__main__':
- main()
接下来,我们开始编写删除学生信息部分,如下:
- # 存储学生信息
- student_info_list = [{"name": "老王", "age": 18, "tel": 110}, {"name": "老李", "age": 18, "tel": 120}]
-
-
- def print_info():
- """显示菜单"""
- print('-' * 20)
- print('欢迎登录学员管理系统')
- print('1: 添加学员')
- print('2: 删除学员')
- print('3: 修改学员信息')
- print('4: 查询学员信息')
- print('5: 显示所有学员信息')
- print('6: 退出系统')
- print('-' * 20)
-
-
- def add_student_info():
- """添加学生"""
- global student_info_list
-
- # 获取要添加的人的电话
- add_tel = int(input('请输入要添加的人的电话:'))
- # 判断是否存在这个学生
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == add_tel:
- print('此人已存在!!!')
- return
- # 确定了所有的学生的电话都不重复
- else:
- add_name = input("请输入要添加的人的姓名:")
- add_age = int(input("请输入要添加的人的年龄:"))
- # 存储新的学生的信息
- my_dict = {}
- my_dict["name"] = add_name
- my_dict["age"] = add_age
- my_dict["tel"] = add_tel
- # 添加到列表中
- student_info_list.append(my_dict)
-
- print('添加成功')
-
-
- def show_all_info():
- """显示所有的学生信息"""
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- print("姓名\t年龄\t电话")
- for i in student_info_list:
- print(f"{i['name']}\t{i['age']}\t{i['tel']}")
-
-
- def del_student_info():
- """删除学生信息"""
- global student_info_list
-
- del_tel = int(input("请输入要删除的人的电话:"))
-
- # 判断这个人是否存在
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == del_tel:
- student_info_list.remove(i)
- print("删除完毕")
- return
- else:
- print('查无此人!!!')
-
-
- def main():
- """主函数, 控制流程的"""
- while True:
- print_info()
- num = input('请输入您的选项:')
-
- if num == "1":
- add_student_info()
- elif num == "2":
- del_student_info()
- elif num == '3':
- pass
- elif num == '4':
- pass
- elif num == '5':
- show_all_info()
- elif num == '6':
- print("谢谢使用!!!")
- return
- else:
- print('输入的不正确!!!')
-
- input("请按回车继续!!!")
-
-
- if __name__ == '__main__':
- main()
接下来,我们思考怎样实现修改学生信息,代码如下:
- # 存储学生信息
- student_info_list = [{"name": "老王", "age": 18, "tel": 110}, {"name": "老李", "age": 18, "tel": 120}]
-
-
- def print_info():
- """显示菜单"""
- print('-' * 20)
- print('欢迎登录学员管理系统')
- print('1: 添加学员')
- print('2: 删除学员')
- print('3: 修改学员信息')
- print('4: 查询学员信息')
- print('5: 显示所有学员信息')
- print('6: 退出系统')
- print('-' * 20)
-
-
- def add_student_info():
- """添加学生"""
- global student_info_list
-
- # 获取要添加的人的电话
- add_tel = int(input('请输入要添加的人的电话:'))
- # 判断是否存在这个学生
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == add_tel:
- print('此人已存在!!!')
- return
- # 确定了所有的学生的电话都不重复
- else:
- add_name = input("请输入要添加的人的姓名:")
- add_age = int(input("请输入要添加的人的年龄:"))
- # 存储新的学生的信息
- my_dict = {}
- my_dict["name"] = add_name
- my_dict["age"] = add_age
- my_dict["tel"] = add_tel
- # 添加到列表中
- student_info_list.append(my_dict)
-
- print('添加成功')
-
-
- def show_all_info():
- """显示所有的学生信息"""
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- print("姓名\t年龄\t电话")
- for i in student_info_list:
- print(f"{i['name']}\t{i['age']}\t{i['tel']}")
-
-
- def del_student_info():
- """删除学生信息"""
- global student_info_list
-
- del_tel = int(input("请输入要删除的人的电话:"))
-
- # 判断这个人是否存在
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == del_tel:
- student_info_list.remove(i)
- print("删除完毕")
- return
- else:
- print('查无此人!!!')
-
-
- def change_student_info():
- """修改学生信息"""
- change_tel = int(input("请输入要修改的学生的电话:"))
-
- # 判断这个人是否存在
- # i => {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == change_tel:
- # 获取要修改的信息
- change_name = input("请输入修改后的姓名:")
- change_age = input("请输入修改后的年龄:")
- change_tel = input("请输入修改后的电话:")
- # 修改信息
- i["name"] = change_name
- i["age"] = change_age
- i["tel"] = change_tel
- print("修改完毕!!!")
- return
- else:
- print("查无此人!!!")
-
-
- def main():
- """主函数, 控制流程的"""
- while True:
- print_info()
- num = input('请输入您的选项:')
-
- if num == "1":
- add_student_info()
- elif num == "2":
- del_student_info()
- elif num == '3':
- change_student_info()
- elif num == '4':
- pass
- elif num == '5':
- show_all_info()
- elif num == '6':
- print("谢谢使用!!!")
- return
- else:
- print('输入的不正确!!!')
-
- input("请按回车继续!!!")
-
-
- if __name__ == '__main__':
- main()
最后,我们来实现最后一个查询某个学生信息功能,如下:
- # 存储学生信息
- student_info_list = [{"name": "老王", "age": 18, "tel": 110}, {"name": "老李", "age": 18, "tel": 120}]
-
-
- def print_info():
- """显示菜单"""
- print('-' * 20)
- print('欢迎登录学员管理系统')
- print('1: 添加学员')
- print('2: 删除学员')
- print('3: 修改学员信息')
- print('4: 查询学员信息')
- print('5: 显示所有学员信息')
- print('6: 退出系统')
- print('-' * 20)
-
-
- def add_student_info():
- """添加学生"""
- global student_info_list
-
- # 获取要添加的人的电话
- add_tel = int(input('请输入要添加的人的电话:'))
- # 判断是否存在这个学生
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == add_tel:
- print('此人已存在!!!')
- return
- # 确定了所有的学生的电话都不重复
- else:
- add_name = input("请输入要添加的人的姓名:")
- add_age = int(input("请输入要添加的人的年龄:"))
- # 存储新的学生的信息
- my_dict = {}
- my_dict["name"] = add_name
- my_dict["age"] = add_age
- my_dict["tel"] = add_tel
- # 添加到列表中
- student_info_list.append(my_dict)
-
- print('添加成功')
-
-
- def show_all_info():
- """显示所有的学生信息"""
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- print("姓名\t年龄\t电话")
- for i in student_info_list:
- print(f"{i['name']}\t{i['age']}\t{i['tel']}")
-
-
- def del_student_info():
- """删除学生信息"""
- global student_info_list
-
- del_tel = int(input("请输入要删除的人的电话:"))
-
- # 判断这个人是否存在
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == del_tel:
- student_info_list.remove(i)
- print("删除完毕")
- return
- else:
- print('查无此人!!!')
-
-
- def change_student_info():
- """修改学生信息"""
- change_tel = int(input("请输入要修改的学生的电话:"))
-
- # 判断这个人是否存在
- # i => {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == change_tel:
- # 获取要修改的信息
- change_name = input("请输入修改后的姓名:")
- change_age = input("请输入修改后的年龄:")
- change_tel = input("请输入修改后的电话:")
- # 修改信息
- i["name"] = change_name
- i["age"] = change_age
- i["tel"] = change_tel
- print("修改完毕!!!")
- return
- else:
- print("查无此人!!!")
-
-
- def search_student_info():
- """查询一个学生的信息"""
- search_tel = int(input("请输入要查询的学生的电话:"))
-
- for i in student_info_list:
- if i["tel"] == search_tel:
- print(f"姓名:{i['name']} 年龄:{i['age']} 电话:{i['tel']}")
- return
- else:
- print("查无此人!!!")
-
-
- def main():
- """主函数, 控制流程的"""
- while True:
- print_info()
- num = input('请输入您的选项:')
-
- if num == "1":
- add_student_info()
- elif num == "2":
- del_student_info()
- elif num == '3':
- change_student_info()
- elif num == '4':
- search_student_info()
- elif num == '5':
- show_all_info()
- elif num == '6':
- print("谢谢使用!!!")
- return
- else:
- print('输入的不正确!!!')
-
- input("请按回车继续!!!")
-
-
- if __name__ == '__main__':
- main()
将各个模块合并在一起,构成完整的学生管理系统。
- # 存储学生信息
- student_info_list = []
-
-
- def print_info():
- """显示菜单"""
- print('-' * 20)
- print('欢迎登录学员管理系统')
- print('1: 添加学员')
- print('2: 删除学员')
- print('3: 修改学员信息')
- print('4: 查询学员信息')
- print('5: 显示所有学员信息')
- print('6: 退出系统')
- print('-' * 20)
-
-
- def add_student_info():
- """添加学生"""
- global student_info_list
-
- # 获取要添加的人的电话
- add_tel = int(input('请输入要添加的人的电话:'))
- # 判断是否存在这个学生
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == add_tel:
- print('此人已存在!!!')
- return
- # 确定了所有的学生的电话都不重复
- else:
- add_name = input("请输入要添加的人的姓名:")
- add_age = int(input("请输入要添加的人的年龄:"))
- # 存储新的学生的信息
- my_dict = {}
- my_dict["name"] = add_name
- my_dict["age"] = add_age
- my_dict["tel"] = add_tel
- # 添加到列表中
- student_info_list.append(my_dict)
-
- print('添加成功')
-
-
- def show_all_info():
- """显示所有的学生信息"""
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- print("姓名\t年龄\t电话")
- for i in student_info_list:
- print(f"{i['name']}\t{i['age']}\t{i['tel']}")
-
-
- def del_student_info():
- """删除学生信息"""
- global student_info_list
-
- del_tel = int(input("请输入要删除的人的电话:"))
-
- # 判断这个人是否存在
- # i ==> {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == del_tel:
- student_info_list.remove(i)
- print("删除完毕")
- return
- else:
- print('查无此人!!!')
-
-
- def change_student_info():
- """修改学生信息"""
- change_tel = int(input("请输入要修改的学生的电话:"))
-
- # 判断这个人是否存在
- # i => {"name": "老王", "age": 18, "tel": 110}
- for i in student_info_list:
- if i["tel"] == change_tel:
- # 获取要修改的信息
- change_name = input("请输入修改后的姓名:")
- change_age = int(input("请输入修改后的年龄:"))
- change_tel = int(input("请输入修改后的电话:"))
- # 修改信息
- i["name"] = change_name
- i["age"] = change_age
- i["tel"] = change_tel
- print("修改完毕!!!")
- return
- else:
- print("查无此人!!!")
-
-
- def search_student_info():
- """查询一个学生的信息"""
- search_tel = int(input("请输入要查询的学生的电话:"))
-
- for i in student_info_list:
- if i["tel"] == search_tel:
- print(f"姓名:{i['name']} 年龄:{i['age']} 电话:{i['tel']}")
- return
- else:
- print("查无此人!!!")
-
-
- def load_data():
- """加载数据"""
- global student_info_list
-
- f = open("./data.txt", 'r', encoding="utf8")
- data = f.read()
- # 判断文件是否为空
- if len(data) > 0:
- # 从文件中获取的数据默认是字符串类型的数据
- data = eval(data)
- # 把数据加载到了 student_info_list
- student_info_list = data
-
- f.close()
-
-
- def save_data():
- """保存数据"""
- f = open('./data.txt', "w", encoding="utf8")
- # 文件必须存储字符串数据
- f.write(str(student_info_list))
- f.close()
-
-
- def main():
- """主函数, 控制流程的"""
- # 加载数据
- load_data()
-
- while True:
- print_info()
- num = input('请输入您的选项:')
-
- if num == "1":
- add_student_info()
- elif num == "2":
- del_student_info()
- elif num == '3':
- change_student_info()
- elif num == '4':
- search_student_info()
- elif num == '5':
- show_all_info()
- elif num == '6':
- # 保存数据
- save_data()
- print("谢谢使用!!!")
- return
- else:
- print('输入的不正确!!!')
-
- input("请按回车继续!!!")
-
-
- if __name__ == '__main__':
- main()
-
需求:设计一个学生管理系统,要求实现对学生信息(学号、姓名、电话号)的增删改查功能,并实现持久化存储(注意文件存储路径)。
- # 存储学生信息
- student_info_list = []
-
-
- def print_info(): # 打印提示信息
- print()
- print('---------------->学生管理系统<-----------------')
- print()
- print(' 1 -> 添加学生信息 2 -> 删除学生信息')
- print(' 3 -> 修改学生信息 4 -> 查询单个学生信息')
- print(' 5 -> 查询所有学生信息 0 -> 退出程序')
- print('---------------------------------------------')
-
-
- def add_student_info():
- """添加学生"""
- global student_info_list
-
- # 获取要添加的人的学号
- add_id = int(input('请添加学生学号:'))
- # 判断是否存在这个学生
- # i ==> {"id": 01, "name": "老王", "tel": 110}
- for i in student_info_list:
- if i["tel"] == add_id:
- print('该学生已存在!!!')
- return
- # 确定了所有的学生的电话都不重复
- else:
- add_name = input("请添加学生姓名:")
- add_tel = int(input("请添加学生电话:"))
- # 存储新的学生的信息
- my_dict = {"id": add_id, "name": add_name, "tel": add_tel}
- # 添加到列表中
- student_info_list.append(my_dict)
-
- print('添加成功!')
-
-
- def show_all_info():
- """显示所有的学生信息"""
- # i ==> {"id": 01, "name": "老王", "tel": 110}
-
- print("学号\t\t姓名\t\t电话")
- for i in student_info_list:
- print(f"{i['id']}\t{i['name']}\t{i['tel']}")
-
-
- def del_student_info():
- """删除学生信息"""
- global student_info_list
-
- del_id = int(input("请输入要删除学生的学号:"))
-
- # 判断这个人是否存在
- # i ==> {"id": 01, "name": "老王", "tel": 110}
- for i in student_info_list:
- if i["id"] == del_id:
- student_info_list.remove(i)
- print("删除完毕!")
- return
- else:
- print('未查到该同学!!!')
-
-
- def change_student_info():
- """修改学生信息"""
- change_id = int(input("请输入要修改的学生的学号:"))
-
- # 判断这个人是否存在
- # i ==> {"id": 01, "name": "老王", "tel": 110}
- for i in student_info_list:
- if i["id"] == change_id:
- # 获取要修改的信息
- change_id = int(input("请输入修改后的学号:"))
- change_name = input("请输入修改后的姓名:")
- change_tel = int(input("请输入修改后的电话:"))
- # 修改信息
- i["id"] = change_id
- i["name"] = change_name
- i["tel"] = change_tel
- print("修改完毕!!!")
- return
- else:
- print("未查到该同学!!!")
-
-
- def search_student_info():
- """查询一个学生的信息"""
- search_id = int(input("请输入要查询的学生的学号:"))
-
- for i in student_info_list:
- if i["id"] == search_id:
- print(f"学号:{i['id']} 姓名:{i['name']} 电话:{i['tel']}")
- return
- else:
- print("未查到该同学!!!")
-
-
- def load_data():
- """加载数据"""
- global student_info_list
-
- f = open("student.txt", 'r', encoding="utf8")
- data = f.read()
- # 判断文件是否为空
- if len(data) > 0:
- # 从文件中获取的数据默认是字符串类型的数据
- data = eval(data)
- # 把数据加载到了 student_info_list
- student_info_list = data
-
- f.close()
-
-
- def save_data():
- """保存数据"""
- f = open('student.txt', "w", encoding="utf8")
- # 文件必须存储字符串数据
- f.write(str(student_info_list))
- f.close()
-
-
- def main():
- """主函数, 控制流程的"""
- # 加载数据
- load_data()
-
- while True:
- print_info()
- num = input('请输入您要操作的序号:')
-
- if num == "1":
- add_student_info()
- elif num == "2":
- del_student_info()
- elif num == '3':
- change_student_info()
- elif num == '4':
- search_student_info()
- elif num == '5':
- show_all_info()
- elif num == '0':
- # 保存数据
- save_data()
- print("退出成功,欢迎您下次使用!")
- return
- else:
- print('序号错误,请您仔细查看提示,再次输入!')
-
-
- if __name__ == '__main__':
- main()
-
添加学生(示例图):
删除学生(示例图):
修改学生(示例图):
查询单个学生信息(示例图):
查询所有学生信息(示例图):
退出程序(示例图):
文件地址位置:
这个学生管理系统基本上把Python的基础知识都利用上了,是检测是否打好了Python基础的一个方法,大家根据思路,尝试着写一写。在之后的一段时间,会给大家带来Python进阶部分的内容,感谢大家支持!
今天的内容就到这里,下期再见啦~
<end>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。