首页 > 技术文章 > python 写简单的职员信息管理系统

pychina 2019-01-16 19:59 原文

职员信息管理系统
要求依次从键盘录入每位员工的信息,包括姓名、员工id、身份证号
要求:
1、身份证号十八位,要求除了第18位可以为x,其余都只能为数字
2、id须由5位数字组成
3、否则提示用户重新输入不符合规则的那几项
4、能随时查看已录入的员工及其信息

info_list = [] #用来存放所有职员数据,每一个职员的数据都是一个列表

while True:
    # 1、界面
    print("-------职员信息管理系统-------")
    print("--1、添加职员信息")
    print("--2、删除职员信息")
    print("--3、查看所有职员信息")
    print("--4、退出管理系统")
    print("-"*30)
    # 2、输入、接收用户的输入的数字,执行对应操作
    command = int(input("请输入1到4之间的数字,进行相应操作:"))
    # 3、通过判断用户输入的数字来执行对应的操作
    if command == 1:
        #添加员工信息
        #让用户输入姓名、员工ID、身份证号
        em_name = input("请输入员工姓名:")
        #获取员工id,长度为5位,并且只能为纯数字
        while True:
            em_work_id = input("请输入员工ID:")
            if len(em_work_id) == 5 and em_work_id.isdigit():
                break
            
            else:
                print("【ERROR】:员工ID必须为5位数字")

        #身份证号18位,要求除了第18位可以x,其余都只能为数字
        while True:
            em_id_num = input("请输入员工身份证号:")
            if len(em_id_num) == 18 and em_id_num[0:17].isdigit() and (em_id_num[-1] in "0123456789xX"):
                break
            else:
                print("【ERROR】:员工身份证号必须为18位,且除了第18位可以为x或者X,其余都是数字!")
        info_list.append([em_name,em_work_id,em_id_num])
        print("【INFO】:添加成功!")

    elif command == 2:
        #删除员工信息
        em_name = input("请输入姓名:")
        #遍历info_list这个列表(找到这个人)
        for i in info_list:
            if em_name in i:
                #在这个列表中就执行删除
                info_list.remove(i)
                print("【INFO】:删除成功!")
                break #找到了此人,所以后面不再需要遍历
            else:
                print("【ERROR】:查无此人!")
    elif command == 3:
        #查询所有员工信息
        print("【INFO】:所有员工信息如下")
        print(info_list)
    elif command == 4:
        #退出系统
        print("【INFO】:退出成功!谢谢使用")
    else:
        print("【ERROR】:请重新输入1到4之间的数字!")

 

推荐阅读