python—学生信息管理系统
本案例模仿某高校信息统计
程序功能:
**1.创建学生信息
2.显示所有学生信息
3.查询学生信息
4.修改/删除学生信息
**
显示菜单:
card_list = []
def show_menu():
print('*'*30)
print('1.新建名片')
print('2.显示全部信息')
print('3.搜索名片')
print('0.退出管理系统')
print('*'*30)
新建学生名片:
def new_cards():
print('*'*30)
print('新建名片')
student_id = input('请输入学号:')
name = input('请输入姓名:')
gender = input('请输入性别:')
nation = input('请输入民族:')
politics_status = input('请输入政治面貌:')
native_place = input('请输入籍贯:')
major = input('请输入专业:')
qq = input('请输入QQ:')
tel = input('请输入电话:')
id_card = input('请输入身份证号:')
card_dict = {'学号':student_id,'姓名':name,'性别':gender,'民族':nation,'政治面貌':politics_status
,'籍贯':native_place,'专业':major,'QQ':qq,'电话':tel,'身份证号':id_card}
card_list.append(card_dict)
print('学生信息创建完毕')
全部学生信息:
def show_all():
print('*'*30)
print('显示全部信息')
if len(card_list) == 0:
print('学生信息为空')
else:
for i in ['学号','姓名','性别','民族','政治面貌','籍贯','专业','QQ','电话','身份证号']:
print(' '+i,end='\t\t\t')
print()
for card_dict in card_list:
print('%s \t\t %s\t\t\t\t%s\t\t\t\t%s \t\t\t%s\t\t\t%s \t\t%s\t\t%s\t\t%s\t\t%s'%(card_dict['学号'], card_dict['姓名'],
card_dict['性别'], card_dict['民族'],
card_dict['政治面貌'],card_dict['籍贯'],card_dict['专业']
,card_dict['QQ'],card_dict['电话'],card_dict['身份证号']))
搜索名片:
def search():
print('*'*30)
print('搜索学生信息:')
find_name = input('请输入要搜索的学生姓名:')
for card_dict1 in card_list:
if find_name == card_dict1['姓名']:
for i in ['学号','姓名','性别','民族','政治面貌','籍贯','专业','QQ','电话','身份证号']: \
print(' ' + i, end='\t\t\t')
print()
print('%s \t\t %s\t\t\t\t%s\t\t\t\t%s \t\t\t%s\t\t\t%s \t\t%s\t\t%s\t\t%s\t\t%s' % (
card_dict1['学号'], card_dict1['姓名'],
card_dict1['性别'], card_dict1['民族'],
card_dict1['政治面貌'], card_dict1['籍贯'],
card_dict1['专业'],card_dict1['QQ'],
card_dict1['电话'], card_dict1['身份证号']))
deal_card(card_dict1)
else:
print('未找到%s的信息' % find_name)
修改学生信息:
def deal_card(find_dict):
print('*'*30)
print('修改信息')
print('【1】.修改学生信息 【2】.删除学生信息 【3】.返回上层系统')
action_num2 = int(input('请输入操作选项:'))
if action_num2 == 1:
for i in ['学号','姓名','性别','民族','政治面貌','籍贯','专业','QQ','电话','身份证号']:
find_dict[f'{i}'] = input_msg(find_dict[f'{i}'],f'请输入{i}:')
elif action_num2 == 2:
print('是否确认删除 1.是 2.否')
check = input('')
if check ==1:
card_list.remove(find_dict)
else:
pass
def input_msg(start_msg,final_msg):
result_str = input(final_msg)
if len(result_str)==0:
return start_msg
else:
return result_str
主程序:
if __name__ == '__main__':
while True:
show_menu()
action_num = int(input('请输入操作选项:'))
if action_num == 1:
new_cards()
elif action_num == 2:
show_all()
elif action_num == 3:
search()
elif action_num == 0:
print('退出信息管理系统')
break
else:
print('输入有误,请重新输入')
执行结果如下: