Python基础-EMS系统

一、问题描述

EMS(Employee Manager System 员工管理系统)

  • 做命令行版本的员工管理系统
  • 功能:
    1.查询:显示当前系统当中的所有员工
    2.添加: 将员工添加到当前系统中
    3.删除: 将员工从系统当中删除
    4.退出:退出系统

二、涉及知识点

  1. 用户输入数字,程序输出结果。涉及python输入输出模块。
  2. 程序自动进行下一轮,涉及 python 循环模块。
  3. 判断用户输入,涉及python 条件判断模块。
  4. 查询用户输入历史,涉及python 的列表模块。
  5. 查询、添加、删除、涉及到列表的操作。

三、代码构建

#显示页面信息
print('-'*20,'欢迎使用员工管理系统','='*20)
print('请选择你需要的操作:\n 1.查询员工 \n 2.添加员工 \n 3.删除员工\n 4.退出系统')

# 创建一个列表存储员工信息
emps = ['test1\t18\t男\t陕西','test2\t19\t女\t山西']
while  True:
    user_choose =(input('请输入[1-4]选择你需要的操作:')) 
    if user_choose == '1':
        print('你正在进行查询员工操作\n',"-"* 40)
        print(f'\t序号\t姓名\t年龄\t性别\t住址')
        n = 1
        for emp in emps :
             print(f'\t{n}\t{emp}')
             n += 1
    elif user_choose == '2' :
        print('你正在进行添加员工操作\n',"-"* 40)
        emp_name = input('请输入员工的姓名:')
        emp_age = input('请输入员工的年龄:')
        emp_gender = input('请输入员工的性别:')
        emp_address = input('请输入员工的地址:')
        emp = f'{emp_name}\t{emp_age}\t{emp_gender}\t{emp_address}'
        # 显示一个提示信息
        print('以下员工将被添加到系统中\n','-'*62,'\n姓名\t年龄\t性别\t住址')
        print(emp)
        print('-'*62)
        user_confirm = input('是否确认该操作[Y/N]:')
 
        # 判断
        if user_confirm == 'Y' or user_confirm == 'yes'or user_confirm == 'y' :
            # 确认
            emps.append(emp)
            # 显示提示信息
            print('添加成功!')
        else :
            # 取消操作
            print('添加已取消!')
    elif user_choose ==  '3':
        print('你正在进行删除员工操作\n',"-"* 40)
        del_num = int(input('请输入要删除的员工的序号:'))

        # 判断序号是否有效
        if 0 < del_num <= len(emps) :
            # 输入合法,根据序号来获取索引
            del_i = del_num - 1
            # 显示一个提示信息
            print('以下员工将被删除')
            print('-'*62)
            print('\t序号\t姓名\t年龄\t性别\t住址')
            print(f'\t{del_num}\t{emps[del_i]}')
            print('-'*62)
            user_confirm = input('该操作不可恢复,是否确认[Y/N]:')
            # 判断
            if user_confirm == 'Y' or user_confirm == 'yes' or user_confirm == 'y'  :
                # 删除元素
                emps.pop(del_i)
                # 显示提示
                print('该员工已被删除!')
            else :
                # 操作取消
                print('删除操作已取消!')
        else :
            # 输入有误
            print('输入有误,请重输入你的选择!')
       
    elif user_choose ==  '4' :
        print('你即将退出员工管理系统,欢迎再次使用!')
        break
    else :
        print('输入错误!请重新输入\n',"="* 40)
       

四、运行调试

在这里插入图片描述

五、补充

1.这里使用列表的原因;
元组和字符串中不能添加新的内容,不能修改元组里面的非可变容器元素列表则可以随意修改其中的值。
2.为什么没有员工信息修改功能:
这个将使用字典来实现员工信息修改,在使用列表对员工信息修改时,如果信息较多,修改其中一个实现很麻烦,实现过程是 :输入修改的序列号,取出对应元素,对元素进行分解,然后用户输入的修改信息赋值给原来的这一部分信息,再进行拼接操作,最后放回原列表中。

发布了56 篇原创文章 · 获赞 182 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42767604/article/details/105116124