python员工管理系统

利用面向对象的思想设计一个员工管理系统。

创建员工类:属性有:员工号,员工姓名,员工工资;

     创建用户类:属性有:用户名,密码;

     1:初始化5个员工对象。(可以使用列表、元组、字典存储) 持久化存储数据

初始化3个用户对象。(可以使用列表、元组、字典存储)

     2:功能菜单:

        一级菜单:登录(需要验证身份); (验证用户名和密码)

        二级菜单:登录成功进入二级菜单,

(1)、查询所有员工信息

(2)、根据工号查询员工信息

(3)、添加员工

(4)、修改员工工资

(5)、删除员工

(6)、退出

 要求:菜单可循环,除非选择6退出

staff_list = []
user_list = []


class Staff:
    def __init__(self, staff_id, staff_name, staff_salary):
        """
        初始化
        :param staff_id: 员工号
        :param staff_name: 员工姓名
        :param staff_salary: 员工工资
        """
        self.staff_id = staff_id
        self.staff_name = staff_name
        self.staff_salary = staff_salary
        # staff_list.append(self)

    def get_sta_id(self):
        return self.staff_id

    def get_sta_name(self):
        return self.staff_name

    def get_sta_salary(self):
        return self.staff_salary


class User:
    def __init__(self, user_name, user_password):
        """
        用户类初始化
        :param user_name: 用户名
        :param user_password: 密码
        """
        self.user_name = user_name
        self.user_password = user_password

    def get_username(self):
        return self.user_name

    def get_userpassword(self):
        return self.user_password


s1 = Staff("01", "林黛玉", "2000")
s2 = Staff("02", "贾宝玉", "3000")
s3 = Staff("03", "薛宝钗", "2000")
s4 = Staff("04", "史湘云", "4000")
s5 = Staff("05", "贾迎春", "3000")

staff_list = [s1, s2, s3, s4, s5]
s1 = staff_list[0]

print(s1.staff_salary)

u1 = User("admin", "123456")
u2 = User("adm", "123456")
u3 = User("ad", "123456")
# user = User()

user_list = [u1, u2, u3]


def login():
    user_name = input("请输入用户名:")
    user_password = input("请输入密码:")
    for i in user_list:
        if user_name == i.get_username() and user_password == i.get_userpassword():
            print("登录成功!")
            break
        else:
            print("用户名或密码错误!")


def query_all():
    """
    查询所有员工信息
    :return:
    """
    print("-" * 50)
    print("查询所有员工信息")
    if len(staff_list) == 0:
        print("不好意思,没有任何员工信息!")
        return

    print("全部员工信息如下:")
    for i in ["员工号", "员工姓名", "员工工资"]:
        print(i, end="\t\t")
    print("")
    # for i in staff_list:
    #     print(i)
    for i in range(0, len(staff_list)):
        print("%s\t\t%s\t\t%s\t\t" %
              (staff_list[i].get_sta_id(),
               staff_list[i].get_sta_name(),
               staff_list[i].get_sta_salary()))

    print("全部信息显示完毕!")
    print("-" * 50)
    pass


def query_id():
    """
    根据工号查询员工信息
    :return:
    """
    print("-" * 50)
    print("根据工号查询员工信息")
    staff_id = input("请输入要查询的员工的工号:")
    for i in range(0, len(staff_list)):
        if staff_list[i].get_sta_id() == staff_id:
            print("查询工号为%s的信息为:" % staff_id)
            print("员工号\t\t员工姓名\t\t员工工资\t\t")
            print("%s\t\t%s\t\t%s\t\t" %
                  (staff_list[i].get_sta_id(),
                   staff_list[i].get_sta_name(),
                   staff_list[i].get_sta_salary()))
            break
        else:
            print("不好意思,没有找到员工号为%s的员工信息" % staff_id)
            break
    print("-" * 50)


def add_staff():
    """
    添加员工
    :return:
    """
    print("-" * 50)
    print("添加新的员工信息")
    staff_id = input("员工号:")
    staff_name = input("员工姓名:")
    staff_salary = input("员工工资:")
    s = Staff(staff_id, staff_name, staff_salary)
    staff_list.append(s)
    print("员工号为%s的员工信息添加成功!" % staff_id)
    print("-" * 50)


def update_staff():
    """
    修改员工工资
    :return:
    """
    print("-" * 50)
    print("修改员工工资")
    staff_id = input("请输入想要修改工资的员工号:")
    for i in range(0, len(staff_list)):
        if staff_list[i].get_sta_id() == staff_id:
            print("工号为%s的员工的工资为:" % staff_id)
            print("%s" % staff_list[i].get_sta_salary())
            new_salary = input("请输入该员工新的工资:")
            s = Staff(staff_id, staff_list[i].get_sta_name(), new_salary)
            staff_list.append(s)
            staff_list.remove(staff_list[i])
            print("修改该员工的工资成功!")
            break
        else:
            print("不好意思,没有员工号为%s的员工" % staff_id)
            break
    print("-" * 50)


def del_staff():
    """
    删除员工
    :return:
    """
    print("-" * 50)
    print("删除员工信息")
    staff_id = input("请输入想要删除的员工的工号:")
    for i in range(0, len(staff_list)):
        if staff_list[i].get_sta_id() == staff_id:
            r = i
            break
    staff_list.remove(staff_list[r])
    print("删除员工信息成功!")
    print("-" * 50)


def menu2():
    print("*" * 50)
    print("【员工管理系统】V1.0")
    print("")
    print("1.查询所有员工信息")
    print("2.根据工号查询员工信息")
    print("3.添加员工")
    print("4.修改员工工资")
    print("5.删除员工")
    print("")
    print("6.退出")
    print("*" * 50)
    print("")


def choose():
    """
    将要选择的操作
    :return:
    """
    while True:
        temp = input("请输入想要执行的操作:")
        print("您选择的操作是%s:" % temp)
        if temp in ["1", "2", "3", "4", "5"]:
            if temp == "1":
                query_all()
            if temp == "2":
                query_id()
            if temp == "3":
                add_staff()
            if temp == "4":
                update_staff()
            if temp == "5":
                del_staff()
        elif temp == "6":
            print("退出程序,谢谢使用!")
            break
        else:
            print("您输入的信息不正确,请重新输入!")


def main():
    login()
    menu2()
    choose()


if __name__ == '__main__':
    main()






 

    原文作者:方小玉啦~
    原文地址: https://blog.csdn.net/weixin_43525386/article/details/110947555
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞