python
Posted mygzhh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python相关的知识,希望对你有一定的参考价值。
#coding=utf-8 #__author:Administrator #__time:2018/5/21 12:43 #__file_name:staff_list import io import time import os FileRead = io.open(‘Staff_list‘,‘r‘,encoding=‘utf8‘) Staff_list = eval(FileRead.read()) username = 0 string = ‘‘‘ 工号:%s 姓名:%s 年龄:%s 部门:%s 地址:%s 电话:%s Q Q:%s 微信:%s 入职时间:%s ‘‘‘ ‘‘‘ 员工信息管理系统 需求: 1.增 2.删 3.改 4.查 5.管理员登陆 6.模糊搜索 ‘‘‘ def login():#登陆模块 global username print ‘=‘*43,‘员工信息管理系统‘,‘=‘*43 num = 1 while num <= 3 : username = int(raw_input(‘请输入你的工号:\n‘)) pwd = raw_input(‘请输入密码:\n‘) if username not in Staff_list: print ‘没有你的信息,请联系管理员添加或重新输入,还有 %d 次机会‘%(3-num) num += 1 elif Staff_list[username][‘权限‘] == 1 and pwd == Staff_list[username][‘密码‘]: print ‘欢迎 %s 进入员工信息管理系统‘%Staff_list[username][‘姓名‘] AdminMenuShow() elif Staff_list[username][‘权限‘] != 1 and pwd == Staff_list[username][‘密码‘]: print ‘欢迎 %s 进入员工信息系统‘%Staff_list[username][‘姓名‘] StaffMenuShow() else : print ‘密码输入错误,还有 %d 次机会‘%(3-num) num += 1 else : print ‘输入次数过多,已退出程序‘ time.sleep(3) exit() def OptionJudge(chioce):#对用户输入进行判断 if chioce == ‘A‘ or chioce == ‘a‘: Increase() elif chioce == ‘B‘ or chioce == ‘b‘: Delete() elif chioce == ‘C‘ or chioce == ‘c‘: Amend() elif chioce == ‘D‘ or chioce == ‘d‘: Query() elif chioce == ‘E‘ or chioce == ‘e‘: AllStaff() elif chioce == ‘F‘ or chioce == ‘f‘: Search() elif chioce == ‘G‘ or chioce == ‘g‘: IncreaseAdmin() else : chioce = raw_input(‘你的输入有误 请重新输入:\n‘) OptionJudge(chioce) def AdminMenuShow():#管理员菜单展示 print ‘=‘ * 43, ‘员工信息管理系统‘, ‘=‘ * 43 print ‘【A】增加一个成员 【B】删除一个成员‘ print ‘【C】修改一个成员 【D】查询一个成员‘ print ‘【E】查看所有成员 【F】关键词搜索 ‘ print ‘【G】增加一个管理员 ‘ print chioce = raw_input(‘请输入你的选择:\n‘) OptionJudge(chioce) def StaffMenuShow():#普通用户菜单展示 print ‘=‘ * 43, ‘员工信息管理系统‘, ‘=‘ * 43 print ‘【E】查看所有成员 【D】查询一个成员‘ print ‘【F】关键词搜索 ‘ chioce = raw_input(‘请输入你的选择:\n‘) OptionJudge(chioce) def Increase():#增加一个用户 print ‘=‘ * 43, ‘员工信息管理系统‘, ‘=‘ * 43 staff_num = Staff_list[‘num‘] Staff_list[staff_num] = {} print ‘该员工的工号是:%s‘ %(staff_num) Staff_list[staff_num][‘密码‘] = raw_input(‘请设置员工登陆密码‘) Staff_list[staff_num][‘权限‘] = raw_input(‘请设置员工权限‘) Staff_list[staff_num][‘\xe5\xa7\x93\xe5\x90\x8d‘] = raw_input(‘请输入员工姓名‘) Staff_list[staff_num][‘年龄‘] = raw_input(‘请输入员工年龄‘) Staff_list[staff_num][‘部门‘] = raw_input(‘请输入员工部门‘) Staff_list[staff_num][‘住址‘] = raw_input(‘请输入员工地址‘) Staff_list[staff_num][‘电话‘] = raw_input(‘请输入员工电话号码‘) Staff_list[staff_num][‘qq‘] = raw_input(‘请输入员工QQ号码‘) Staff_list[staff_num][‘微信‘] = raw_input(‘请输入员工微信号码‘) Staff_list[staff_num][‘入职时间‘] = raw_input(‘请输入员工入职日期‘) Staff_list[‘num‘] = Staff_list[‘num‘] + 1 print ‘%s已录入成功‘ % Staff_list[staff_num][‘姓名‘] Staff_list_UpDate() def IncreaseAdmin():#创建管理员账户 print ‘=‘ * 43, ‘员工信息管理系统‘, ‘=‘ * 43 staff_num = int(raw_input(‘请输入员工工号‘)) if staff_num in Staff_list : Flag = raw_input(‘确认是否将 %s 设置为管理员用户?Y/N‘ % Staff_list[staff_num][‘姓名‘]) if Flag == ‘Y‘: print ‘%s 已成功设置为管理员‘ % Staff_list[staff_num][‘姓名‘] Staff_list[staff_num][‘权限‘] = 1 time.sleep(3) Staff_list_UpDate() elif Flag == ‘N‘: print ‘正在返回主菜单‘ AdminMenuShow() else: print ‘你的输入错误,正在为你返回主菜单‘ AdminMenuShow() else : print ‘没有工号为%d的用户,请重新输入‘ % staff_num IncreaseAdmin() def Delete():#删除一个用户 print ‘=‘ * 43, ‘员工信息管理系统‘, ‘=‘ * 43 Staff_num = int(raw_input(‘请输入你要删除的员工工号‘)) if Staff_num in Staff_list and Staff_list[Staff_num] != {}: Flag = raw_input(‘确认是否删除 %s?Y/N ‘ % Staff_list[Staff_num][‘姓名‘]) if Flag == ‘Y‘ or Flag == ‘y‘ : temp = Staff_list[Staff_num][‘姓名‘] Staff_list[Staff_num] = {} time.sleep(3) print ‘已经为您删除 %s‘%temp Staff_list_UpDate() elif Flag == ‘N‘ or Flag == ‘n‘: print ‘请重新输入‘ Delete() else: print ‘你的输入错误,正在为你返回主菜单‘ AdminMenuShow() elif Staff_num in Staff_list and Staff_list[Staff_num] == {}: print ‘%s已被删除,请重新输入‘%Staff_list[Staff_num][‘姓名‘] Delete() else: print ‘没有工号为%d的用户,请重新输入‘%Staff_num Delete() print ‘操作完毕,正在返回主菜单‘ AdminMenuShow() def Amend():#修改一个用户 exit() def Permissions(): if Staff_list[username][‘权限‘] == 1: print ‘操作完毕,正在返回主菜单‘ AdminMenuShow() else: print ‘操作完毕,正在返回主菜单‘ StaffMenuShow() def Query():#查询一个用户 print ‘=‘ * 43, ‘员工信息管理系统‘, ‘=‘ * 43 staff_num = int(raw_input(‘请输入员工工号‘)) if staff_num in Staff_list: print ‘=‘ * 43, ‘Info of %s‘ % Staff_list[staff_num][‘姓名‘], ‘=‘ * 43 print string%(Staff_list[staff_num],Staff_list[staff_num][‘姓名‘],Staff_list[staff_num][‘年龄‘],Staff_list[staff_num][‘部门‘],Staff_list[staff_num][‘住址‘],Staff_list[staff_num][‘电话‘],Staff_list[staff_num][‘qq‘],Staff_list[staff_num][‘微信‘],Staff_list[staff_num][‘入职时间‘]) else : print ‘没有工号为%d的用户,请重新输入‘ Query() Flag = raw_input(‘%s 信息已查询完毕,是否返回主菜单?Y/N ‘ % Staff_list[staff_num][‘姓名‘]) if Flag == ‘Y‘ or Flag == ‘y‘ : Permissions() else : print ‘重新查询一个用户‘ Query() def AllStaff():#查看所有用户 for i in range(Staff_list[‘num‘]-1) : if i == {}: print ‘=‘ * 100 print ‘该用户信息已被删除‘ else : #print ‘=‘ * 40, ‘%s的信息‘ % Staff_list[i+1][‘姓名‘], ‘=‘ * 40, print string % (i+1, Staff_list[i+1][‘年龄‘], Staff_list[i+1][‘部门‘], Staff_list[i+1][‘住址‘], Staff_list[i+1][‘电话‘],Staff_list[i+1][‘qq‘], Staff_list[i+1][‘微信‘], Staff_list[i+1][‘入职时间‘]) Flag = raw_input(‘用户信息已查询完毕,是否返回主菜单?Y/N ‘) if Flag == ‘Y‘ or Flag == ‘y‘: Permissions() else: print ‘不允许操作‘ def Search():#关键词搜索 exit() def Staff_list_UpDate(): global FileRead FileRead.close() with open(‘Staff_list_copy‘, ‘w‘) as FileWrite : Write_Staff_list = str(Staff_list) FileWrite.write(Write_Staff_list) os.remove(‘Staff_list‘) os.renames(‘Staff_list_copy‘,‘Staff_list‘) FileRead = io.open(‘Staff_list‘, ‘r‘, encoding=‘utf8‘) AdminMenuShow() login()
以上是关于python的主要内容,如果未能解决你的问题,请参考以下文章