【实战】员工管理系统
要求实现以下功能:
-
功能列表
- 1.添加用户
- 2.查看指定用户
- 3.查看所有用户
- 4.删除指定用户
- 5.删除所有用户
- 6.修改指定用户信息
- 7.退出系统
-
用户信息总览
编号 名字 年龄 爱好 身份信息
-
指定编号(自定义):可以根据指定编号,修改查看指定员工信息
-
指定名字(自定义)
-
指定年龄(自定义)
-
指定爱好(自定义):可以有多个爱好,可以修改时在原有基础上增加新的爱好
-
指定身份信息(管理员/员工):管理员具有删除和修改信息功能,员工只能登录注册添加和查看
-
# [1]功能列表
function_dict = '''
1.添加用户
2.查看指定用户
3.查看所有用户
4.删除指定用户
5.删除所有用户
6.修改指定用户信息
7.退出系统
8.注册
9.登录
'''
# [2]定义员工信息存储数据库
# 存储登录信息{'heart':'123'}
user_data_pwd_dict = {'heart': '123'}
# 存储用户详细信息: 编号 名字 年龄 爱好 身份信息
user_data_info_list = [{'heart': {'id': '001', 'name': 'god', 'hobby': [], 'premission': 'admin'}}]
# [3]写功能
tag_outer = True
tag_admin = False
while tag_outer:
print(function_dict)
function_id_outer = input('请输入功能id:>>>').strip()
if not function_id_outer.isdigit():
print(f'请输入合法的id({function_id_outer})!')
function_id_outer = int(function_id_outer)
if function_id_outer not in [1, 2, 3, 4, 5, 6, 7, 8, 9]:
print(f'{function_id_outer}:>>> 不存在!')
# 1.添加用户
if function_id_outer == 1 and tag_admin:
# {'heart':123} ---> 已经注册过的用户
username_input_login = input('请输入用户名 :>>>').strip()
if username_input_login not in user_data_pwd_dict.keys():
print(f'{username_input_login} 当前用户没有注册过,不允许添加信息!')
continue
# 修改注册过的用户的信息
hobby_list = []
username_id = input('请输入员工编号 :>>>').strip()
username_input = input('请输入员工姓名 :>>>').strip()
username_premisson = input('请输入员工等级(默认用户) :>>>').strip()
while True:
username_hobby = input('请输入员工爱好(q结束添加) :>>>').strip()
if username_hobby == 'q':
break
if username_hobby in hobby_list:
print(f'{username_hobby}不允许重复添加')
hobby_list.append(username_hobby)
user_data_info_list.append({username_input_login: {'id': username_id,
'name': username_input,
'hobby': hobby_list,
'premission': username_premisson if username_premisson else '普通用户'}})
print(f'{username_input_login} :>>> 用户信息已添加')
print(user_data_info_list)
continue
# 2.查看指定用户
elif function_id_outer == 2:
print(f'当前所有id如下:')
for info in user_data_info_list:
print([item.get('id') for item in info.values()])
username_id = input('请输入用户编号:>>>').strip()
for info in user_data_info_list:
if username_id not in [item.get('id') for item in info.values()]:
print(f'当前编号 {username_id} 不存在')
break
for item in info.values():
if item.get('id') == username_id:
print(f'''
当前用户信息如下 :
{item}
''')
# 3.查看所有用户
elif function_id_outer == 3:
for info in user_data_info_list:
for item in info.values():
print(f'''
所有用户信息如下
{item}
''')
# 4.删除指定用户
elif function_id_outer == 4:
username_input = input('请输入用户名 :>>>').strip()
del user_data_pwd_dict[username_input]
index = 0
for i in range(len(user_data_info_list)):
if username_input == list(user_data_info_list[i].keys()[0]):
index = i
del user_data_info_list[index]
print(f'''
用户 {username_input} :>>>删除成功!
''')
# 5.删除所有用户
elif function_id_outer == 5:
user_data_pwd_dict.clear()
user_data_info_list.clear()
# 6.修改指定用户信息
elif function_id_outer == 6:
print(f'当前所有id如下:')
for info in user_data_info_list:
print([item.get('id') for item in info.values()])
username_id = input('请输入用户编号:>>>').strip()
id_list = []
for item in info.values():
id_list.append(item.get('id'))
if username_id not in id_list:
print(f'当前编号 {username_id} 不存在')
break
for info in user_data_info_list:
for item in info.values():
if item.get('id') == username_id:
# item : {'id': '001', 'name': 'god', 'hobby': [], 'premission': 'admin'}
hobby_list = item.get('hobby')
username_input = input('请输入员工姓名 :>>>').strip()
username_premisson = input('请输入员工等级(默认用户) :>>>').strip()
while True:
username_hobby = input('请输入员工爱好(q结束添加) :>>>').strip()
if username_hobby == 'q':
break
if username_hobby in hobby_list:
print(f'{username_hobby}不允许重复添加')
hobby_list.append(username_hobby)
item.update({'id': item.get('id'),
'name': username_input,
'hobby': hobby_list,
'premission': username_premisson if username_premisson else '普通用户'})
print(f' :>>> 用户信息已修改')
print(user_data_info_list)
# 7.退出系统
elif function_id_outer == 7:
tag_outer = False
print(f'已退出系统!感谢使用!')
break
# 8.注册
elif function_id_outer == 8:
username_input = input('请输入用户名 :>>>').strip()
if username_input in user_data_pwd_dict.keys():
print(f'{username_input} 当前用户已存在,不允许重复注册!')
continue
password_input = input('请输入密码:>>>').strip()
user_data_pwd_dict[username_input] = password_input
print(f'{username_input} :>>>注册成功!')
# 9.登录
elif function_id_outer == 9:
username_input = input('请输入用户名 :>>>').strip()
password_input = input('请输入密码 :>>>').strip()
if username_input not in user_data_pwd_dict.keys():
print(f'{username_input} 当前用户不存在,请先注册!')
continue
if password_input != user_data_pwd_dict[username_input]:
print(f'{username_input} 密码错误!')
continue
for info in user_data_info_list:
# {'heart': {'id': '001', 'name': 'god', 'hobby': [], 'premission': 'admin'}}
if info.get(username_input).get('premission') == 'admin':
tag_admin = True
else:
print('当前用户无权限')
print(f'{username_input} 用户登录成功!')
标签:username,info,管理系统,list,员工,print,input,id
From: https://www.cnblogs.com/ssrheart/p/17891122.html