python基础练习题:员工信息管理系统。使用列表和字典实现。

需求:

# 员工管理系统
# 1.展示
# 2.新增
# 3.修改
# 4.删除
# 5.退出

列表实现:

list1 = [{"userId": "1001", "username": "张三", "age": "16", "sex": "男"},
         {"userId": "1002", "username": "李四", "age": "17", "sex": "女"},
         {"userId": "1003", "username": "王五", "age": "18", "sex": "男"}]


# 展示员工
def UserList():
    for i in range(len(list1)):
        for value in list1[i].values():
            print(value, end=" ")
        print(" ")


# 2.新增
def UserAdd(UserId, Username, Age, Sex):
    dict1 = dict(userId=UserId, username=Username, age=Age, sex=Sex)
    isExist = False
    for i in range(len(list1)):
        if UserId in list1[i - 1].values():
            isExist = True

    if isExist:
        print("编号已存在,不能新增。")
    else:
        list1.append(dict1)
        print("新增成功")


# 3.修改
def UserUpd(UserId, Username, Age, Sex):
    isExist = False
    for i in range(len(list1)):
        if UserId in list1[i - 1].values():
            list1[i - 1].update(userId=UserId, username=Username, age=Age, sex=Sex)
            print("修改成功")
            isExist = True
            break

    if not isExist:
        print("没有对应编号的人员")


# 4.删除
def UserDel(UserId):
    isExist = False
    for i in range(len(list1)):
        if UserId in list1[i].values():
            list1.pop(i)
            print("删除成功")
            isExist = True
            break

    if not isExist:
        print("没有对应编号的人员")


# 5.退出
IsLoop = True
try:
    while IsLoop:
        userInput = input("员工管理系统,请输入1展示,2新增,3修改,4删除,5退出:")
        if int(userInput) == 1:
            UserList()

        if int(userInput) == 2:
            userId = input("请输入编号:")
            username = input("请输入名称:")
            age = input("请输入年龄:")
            sex = input("请输入性别:")
            UserAdd(userId, username, age, sex)

        if int(userInput) == 3:
            userId = input("请输入编号:")
            username = input("请输入名称:")
            age = input("请输入年龄:")
            sex = input("请输入性别:")
            UserUpd(userId, username, age, sex)

        if int(userInput) == 4:
            userId = input("请输入编号:")
            UserDel(userId)

        if int(userInput) == 5:
            IsLoop = False
except (ValueError, TypeError) as e:
    print("输入错误,系统退出。", e)
finally:
    print("欢迎再次使用。")

字典实现:

dict1 = {"1001": {"username": "张三", "age": "16", "sex": "男"},
         "1002": {"username": "李四", "age": "17", "sex": "女"},
         "1003": {"username": "王五", "age": "18", "sex": "男"}}


# 1.展示
def userList():
    for keys in dict1.keys():
        vDict = dict1.get(keys)
        print(keys, end=" ")
        for values in vDict.values():
            print(values, end=" ")
        print(" ")


# 2.新增 、 3.修改
def userAdd(Type, UserId, Username, Age, Sex):
    isExist = dict1.get(UserId, "Error")
    if Type == 2 and isExist != "Error":
        print("用户已存在,不允许新增。")
    elif Type == 3 and isExist == "Error":
        print("用户不存在,不允许修改。")
    else:
        UserDict = {UserId: {"Username": Username, "Age": Age, "Sex": Sex}}
        dict1.update(UserDict)
        if Type == 3:
            print("修改成功")
        else:
            print("新增成功")


# 4.删除
def userDel(UserId):
    isExist = dict1.get(UserId, "Error")
    if isExist != "Error":
        dict1.pop(UserId)
        print("删除成功")
    else:
        print("用户不存在,不允许删除。")


# 5.退出
IsLoop = True
try:
    while IsLoop:
        userInput = int(input("员工管理系统,请输入1展示,2新增,3修改,4删除,5退出:"))
        if userInput == 1:
            userList()
        if userInput == 2:
            userId = input("请输入编号:")
            Username = input("请输入姓名:")
            Age = input("请输入年龄:")
            Sex = input("请输入性别:")
            userAdd(2, userId, Username, Age, Sex)
        if userInput == 3:
            userId = input("请输入编号:")
            Username = input("请输入姓名:")
            Age = input("请输入年龄:")
            Sex = input("请输入性别:")
            userAdd(3, userId, Username, Age, Sex)
        if userInput == 4:
            userId = input("请输入编号:")
            userDel(userId)
        if userInput == 5:
            IsLoop = False
except (ValueError, TypeError) as e:
    print("输入错误,系统退出。", e)
finally:
    print("欢迎再次使用。")

 

posted @ 2021-09-12 15:02  毛伢子  阅读(578)  评论(0)    收藏  举报