赞
踩
主要的步骤:
增删改查操作:
储存学生信息:
(姓名,年龄,班级,性别......)
储存所有的学生信息:
列表:[{},{},{}......]
5.功能菜单,业务框架。
搭建业务框架
添加学生
删除学生
修改学生信息
查询单个学生信息
查询所有学生信息
退出系统
请选择要进行的操作编号:
- def show_menu():
- print('1.添加学生')
- print('2.删除学生')
- print('3.修改学生信息')
- print('4.查询单个学生信息')
- print('5.查询所有的学生信息')
- print('6.退出系统')
-
-
- while True:
- show_menu()
- opt = input('选择要进行的标号:')
- if opt == '1':
- print('1.添加学生')
- elif opt == '2':
- print('2.删除学生')
- elif opt == '3':
- print('3.修改学生信息')
- elif opt == '4':
- print('4.查询单个学生信息')
- elif opt == '4':
- print('5.查询所有的学生信息')
- elif opt == '6':
- print('6.退出系统')
- else:
- print('输入有误,请重新输入')
- continue
- input('-----请按回车键在进行操作-------')
添加学生信息
通过input函数获取学生的信息,姓名,年龄,性别
将学生信息转换为字典进行保存
将这个学生字典添加的列表中
代码优化:假设学生的名字不重复,在添加学生的时候,进行判断,如果学生姓名已经存在,则比添加。
- def show_menu():
- print('1.添加学生')
- print('2.删除学生')
- print('3.修改学生信息')
- print('4.查询单个学生信息')
- print('5.查询所有的学生信息')
- print('6.退出系统')
-
-
- stud_list = []
-
-
- def insert_studet():
- # 通过input函数获取学生的信息,姓名,年龄,性别
- name = input('输入学生姓名:')
- for j in stud_list:
- if j['name'] == name:
- print('学生信息存在,不在添加')
- return # 结束函数执行
- age = input('输入学生年龄:')
- gender = input('输入学生性别:')
- # • 将学生信息转换为字典进行保存
- stud_dict = {'name': name, 'age': age, 'gender': gender}
- # • 将这个学生字典添加的列表中
- stud_list.append(stud_dict)
- print('------------学生信息添加成功-------------')
-
-
- def show_all_stud():
- if len(stud_list):
- for i in stud_list:
- print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
- else:
- print('目前没有学生信息')
-
-
- while True:
- show_menu()
- opt = input('选择要进行的标号:')
- if opt == '1':
- print('1.添加学生')
- insert_studet()
- elif opt == '2':
- print('2.删除学生')
- elif opt == '3':
- print('3.修改学生信息')
- elif opt == '4':
- print('4.查询单个学生信息')
- elif opt == '5':
- print('5.查询所有的学生信息')
- show_all_stud()
- elif opt == '6':
- print('6.退出系统')
- break
- else:
- print('输入有误,请重新输入')
- continue
- input('-----请按回车键在进行操作-------')
删除/修改/查询学生信息
都使用name对学生进行判断
使用input获取要删除/修改/查询的学生姓名
判断学生信息是否存在
学生存在,对学生进行 删除/修改/查询 操作
学生信息不存在,直接结束
完整代码进行编写完成:
- def show_menu():
- print('1.添加学生')
- print('2.删除学生')
- print('3.修改学生信息')
- print('4.查询单个学生信息')
- print('5.查询所有的学生信息')
- print('6.退出系统')
-
-
- stud_list = []
-
-
- def insert_studet():
- # 通过input函数获取学生的信息,姓名,年龄,性别
- name = input('输入学生姓名:')
- for j in stud_list:
- if j['name'] == name:
- print('学生信息存在,不在添加')
- return # 结束函数执行
- age = input('输入学生年龄:')
- gender = input('输入学生性别:')
- # • 将学生信息转换为字典进行保存
- stud_dict = {'name': name, 'age': age, 'gender': gender}
-
- # • 将这个学生字典添加的列表中
- stud_list.append(stud_dict)
- print('------------学生信息添加成功-------------')
-
-
- def stud_remove():
- # 使用input获取要删除/修改/查询 的学生姓名
- name = input('输入学生名字')
- for stud in stud_list:
- # 判断学生信息是否存在
- if name == stud['name']:
- print('学生姓名存在')
- # 学生信息存在,对学生进行 删除/修改/查询/操作
- stud_list.remove(stud) # 删除整个字典
- return
- else:
- print('该学生信息不存在,无法删除')
-
-
- def stud_modify():
- name = input('输入学生名字')
- for stud in stud_list:
- if name == stud['name']:
- stud['age'] = int(input('输入新的年龄:'))
- return
- else:
- print('该学生信息不存在,无法删除')
-
-
- def stud_single():
- name = input('输入查询学生姓名:')
- for i in stud_list:
- if name == i['name']:
- print(i)
- return
- else:
- print('没有查到此学生信息')
-
-
- def show_all_stud():
- if len(stud_list):
- for i in stud_list:
- print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
- else:
- print('目前没有学生信息')
-
-
- def main():
- while True:
- show_menu()
- opt = input('选择要进行的标号:')
- if opt == '1':
- print('1.添加学生')
- insert_studet()
- elif opt == '2':
- print('2.删除学生')
- stud_remove()
- elif opt == '3':
- stud_modify()
- print('3.修改学生信息')
- elif opt == '4':
- print('4.查询单个学生信息')
- stud_single()
- elif opt == '5':
- print('5.查询所有的学生信息')
- show_all_stud()
- elif opt == '6':
- print('6.退出系统')
- break
- else:
- print('输入有误,请重新输入')
- continue
- input('-----请按回车键在进行操作-------')
-
-
- main()
1.文件进行保存
- ###---------------------学生管理系统-----------------
- def show_menu():
- print('1.添加学生')
- print('2.删除学生')
- print('3.修改学生信息')
- print('4.查询单个学生信息')
- print('5.查询所有的学生信息')
- print('6.退出系统')
-
-
- stud_list = []
-
-
- def insert_studet():
- # 通过input函数获取学生的信息,姓名,年龄,性别
- name = input('输入学生姓名:')
- for j in stud_list:
- if j['name'] == name:
- print('学生信息存在,不在添加')
- return # 结束函数执行
- age = input('输入学生年龄:')
- gender = input('输入学生性别:')
- # • 将学生信息转换为字典进行保存
- stud_dict = {'name': name, 'age': age, 'gender': gender}
-
- # • 将这个学生字典添加的列表中
- stud_list.append(stud_dict)
- print('------------学生信息添加成功-------------')
-
-
- def stud_remove():
- # 使用input获取要删除/修改/查询 的学生姓名
- name = input('输入学生名字')
- for stud in stud_list:
- # 判断学生信息是否存在
- if name == stud['name']:
- print('学生姓名存在')
- # 学生信息存在,对学生进行 删除/修改/查询/操作
- stud_list.remove(stud) # 删除整个字典
- return
- else:
- print('该学生信息不存在,无法删除')
-
-
- def stud_modify():
- name = input('输入学生名字')
- for stud in stud_list:
- if name == stud['name']:
- stud['age'] = int(input('输入新的年龄:'))
- return
- else:
- print('该学生信息不存在,无法删除')
-
-
- def stud_single():
- name = input('输入查询学生姓名:')
- for i in stud_list:
- if name == i['name']:
- print(i)
- return
- else:
- print('没有查到此学生信息')
-
-
- def show_all_stud():
- if len(stud_list):
- for i in stud_list:
- print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
- else:
- print('目前没有学生信息')
-
-
- def save():
- f = open('student.txt', 'w')
- f.write(str(stud_list))
- f.close() #文件保存方法
-
-
- def main():
- while True:
- show_menu()
- opt = input('选择要进行的标号:')
- if opt == '1':
- print('1.添加学生')
- insert_studet()
- elif opt == '2':
- print('2.删除学生')
- stud_remove()
- elif opt == '3':
- stud_modify()
- print('3.修改学生信息')
- elif opt == '4':
- print('4.查询单个学生信息')
- stud_single()
- elif opt == '5':
- print('5.查询所有的学生信息')
- show_all_stud()
- elif opt == '6':
- save()
- print('6.退出系统')
- break
- else:
- print('输入有误,请重新输入')
- continue
- input('-----请按回车键在进行操作-------')
-
-
- main()
文件进行读取
进行优化
- ###---------------------学生管理系统-----------------
- import os
-
-
- def show_menu():
- print('1.添加学生')
- print('2.删除学生')
- print('3.修改学生信息')
- print('4.查询单个学生信息')
- print('5.查询所有的学生信息')
- print('6.退出系统')
-
-
- stud_list = []
-
-
- def insert_studet():
- # 通过input函数获取学生的信息,姓名,年龄,性别
- name = input('输入学生姓名:')
- for j in stud_list:
- if j['name'] == name:
- print('学生信息存在,不在添加')
- return # 结束函数执行
- age = input('输入学生年龄:')
- gender = input('输入学生性别:')
- # • 将学生信息转换为字典进行保存
- stud_dict = {'name': name, 'age': age, 'gender': gender}
-
- # • 将这个学生字典添加的列表中
- stud_list.append(stud_dict)
- print('------------学生信息添加成功-------------')
-
-
- def stud_remove():
- # 使用input获取要删除/修改/查询 的学生姓名
- name = input('输入学生名字')
- for stud in stud_list:
- # 判断学生信息是否存在
- if name == stud['name']:
- print('学生姓名存在')
- # 学生信息存在,对学生进行 删除/修改/查询/操作
- stud_list.remove(stud) # 删除整个字典
- return
- else:
- print('该学生信息不存在,无法删除')
-
-
- def stud_modify():
- name = input('输入学生名字')
- for stud in stud_list:
- if name == stud['name']:
- stud['age'] = int(input('输入新的年龄:'))
- return
- else:
- print('该学生信息不存在,无法删除')
-
-
- def stud_single():
- name = input('输入查询学生姓名:')
- for i in stud_list:
- if name == i['name']:
- print(i)
- return
- else:
- print('没有查到此学生信息')
-
-
- def show_all_stud():
- if len(stud_list):
- for i in stud_list:
- print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
- else:
- print('目前没有学生信息')
-
-
- def save():
- f = open('student.txt', 'w')
- f.write(str(stud_list))
- f.close() # 文件保存方法
-
-
- def read(): # 读取文件
- global stud_list
- if os.path.exists('student.txt'):
- f = open('student.txt', 'r', encoding='utf-8')
- buf = f.read()
- if buf:
- stud_list = eval(buf) # eval()去除引号
- f.close()
-
-
- def main():
- while True:
- show_menu()
- opt = input('选择要进行的标号:')
- if opt == '1':
- print('1.添加学生')
- insert_studet()
- elif opt == '2':
- print('2.删除学生')
- stud_remove()
- elif opt == '3':
- stud_modify()
- print('3.修改学生信息')
- elif opt == '4':
- print('4.查询单个学生信息')
- stud_single()
- elif opt == '5':
- print('5.查询所有的学生信息')
- show_all_stud()
- elif opt == '6':
- save()
- print('6.退出系统')
- break
- else:
- print('输入有误,请重新输入')
- continue
- input('-----请按回车键在进行操作-------')
-
-
- main()
这次的学生管理系统详细编写,大家可以看看!!!
如有错误,大家可以纠正!!!
#----------------python函数补充内容---------
注意:跟上面的学生管理系统无关!!!纯属补充内容!!!
- def func(*args, **kwargs):
- print('args', args)
- print('kwargs', kwargs)
- num = 0
- for i in args:
- num += i
- for j in kwargs.values():
- num += j
- print(f'求和结果为{num}')
-
-
- my_list = [1, 2, 3, 4, 5, 6]
- my_dict = {'a': 7, 'b': 8, 'c': 9, 'd': 10}
- # func(my_list) # 将列表作为一个数据进行传递
- # func(*my_list) # 将列表中的每个数据作为位置参数进行传递,拆包
- func(my_dict) # 将my_dict 作为一个位置实参进行传递
- func(*my_dict) # 将my_dict 中的key作为位置实参进行传递
- func(**my_dict) # 将my_dict中键值对作为关键字实参进行传递
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。