课时8:EMS项目练习_添加员工

简介: 本文介绍 Python 语言基础中的 EMS(员工管理系统)项目练习,主要实现员工信息的查询、添加、删除和退出功能。通过命令行界面操作,系统提供四个基本功能选项:1. 查询员工;2. 添加员工;3. 删除员工;4. 退出系统。在具体实现中,使用列表保存员工信息,并通过循环和条件判断处理用户输入,确保系统的持续运行和正确响应。本课时重点讲解了如何搭建系统的基本框架及实现员工信息查询功能,后续将深入探讨添加和删除员工的操作。

EMS项目练习_添加员工

 

摘要:本文为 Python 语言基础中 EMS 的项目练习

1.搭建 EMS 的员工管理系统的基本框架操作

2.搭建 EMS 的员工信息查询操作


 

1.1 搭建 EMS 的员工管理系统的基本框架操作

本节课来做练习,EMS(Employee Managen System员工管理系统)练习,做一个通过命令行版本的员工管理系统,我(老师)的桌面有我做的一个员工管理系统,如下图:

image.png

image.png

从图来看要实现四个功能分别是:1.查询、2.添加、3.删除、4.退出。

image.png

如上图,通过员工管理系统输入序号后查询操作显示了孙悟空的信息,

image.png

如上图,通过员工管理系统输入序号后逐条增加了猪八戒的信息并进行了查询,发现已经输入成功。那接下来介绍一下四个功能的形式,

1.查询是显示当前系统当中的所有员工

2.添加是将员工添加到当前系统的

3.删除是将员工从系统当中删除

4.退出是退出系统

在做之前要思考员工信息要保存到哪里? 答案是列表,所以在系统中应该有一个列表,专门用来保存所有员工信息的。首先要显示一个欢迎界面,查询员工就是遍历列表打印出来,添加就增加一个员工信息,删除员工就是删除员工信息。注意:当做完尽量通过命令行来测试。

接下来创建一个新的文件名称为:07.EMS练习.py。

image.png

从上图来说,需要显示系统的欢迎信息:欢迎使用员工管理系统,

示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’,’_’*20)

image.png

image.png

image.png


接下来要要显示用户的选项,分别是:‘查询员工’、‘添加员工’、‘删除员工',‘退出系统’这四个选项,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’,’_’*20)
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')

image.png


接下来增加让用户选择的步骤,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’,’_’*20)
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')

image.png


从上图来说用户已经输入选择内容了,接下来根据用户的选择做相关的操作,结合上图来给了用户1-4这四个选项,但用户可能输入一下其他内容,所以需要设置5种情况,分别是输入1进入查询员工的操作,输入2进入添加员工的操作,输入3删除员工的操作,输入4退出系统并返回:“欢迎使用!再见!点击回车键退出!”,输入其他内容返回给用户:“您的输入有误,请重新选择!”的信息,同时为了保持系统的循环还需写一个循环while死循环,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
#根据用户的选择做相关的操作
if user _choose == '1'
pass
elif user _choose =='2':
pass
elif user _choose =='3'
pass
elif user choose =='4
# 退出
input('欢迎使用!再见!点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')

image.png

从示例中来看已经执行循环并且可以输入内容进行返回,但距离比较近,所以要增加分割线,在退出程序的操作中也设置分割线并重写写返回内容,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
#根据用户的选择做相关的操作
if user _choose == '1'
pass
elif user _choose =='2':
pass
elif user _choose =='3'
pass
elif user choose =='4
# 退出
print('_'*62)
print(‘欢迎使用!再见!’)
input('点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')
#打印分割线
print('_'*62)

image.png


从示例来看像在上边在打印一条分割线效果会更好,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
print('_'*62)
 
#根据用户的选择做相关的操作
if user _choose == '1'
pass
elif user _choose =='2':
pass
elif user _choose =='3'
pass
elif user choose =='4
# 退出
print(‘欢迎使用!再见!’)
input('点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')
#打印分割线
print('_'*62)

image.png

如上图示例更改的效果呈现会更好一些。以上代码已经把结构搭建完成了。接下来先实现查询员工的操作。

 

1.2 搭建 EMS 的员工信息查询操作

image.png

结合之前写的员工管理系统可以看出查询员工显示了员工的所有信息,分别有序号、姓名、年龄、性别、住址这五类信息,接下来示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
print('_'*62)
#根据用户的选择做相关的操作
if user _choose == '1'
#查询员工
#打印表头
print('\t序号\t姓名\t年龄\t性别\t住址')
pass
elif user _choose =='2':
    # 添加员工
pass
elif user _choose =='3'
# 删除员工
pass
elif user choose =='4
# 退出
print(‘欢迎使用!再见!’)
input('点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')
#打印分割线
print('_'*62)

image.png

从示例来看表头显示出来了,接下来显示员工信息,接下来需要一个列表储存员工信息,由于while循环如果把列表放到循环里,每循环一次创建一个列表,所以把列表放到循环外并在查询处显示员工信息,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个列表,用来保存员工的信息
emps =[]
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
print('_'*62)
#根据用户的选择做相关的操作
if user _choose == '1'
#查询员工
#打印表头
print('\t序号\t姓名\t年龄\t性别\t住址')
# 显示员工信息
for emp in emps
print(emp)
pass
elif user _choose =='2':
    # 添加员工
pass
elif user _choose =='3'
# 删除员工
pass
elif user choose =='4
# 退出
print(‘欢迎使用!再见!’)
input('点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')
#打印分割线
print('_'*62)

image.png

从示例来看列表中没有信息,所以在执行是也没有信息。所以要在emps列表添加员工信息,那员工信息以字符串的形式统一保存到列表中,为了对齐和表头的间隔一样。示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个列表,用来保存员工的信息
emps =[‘\t1\t孙悟空\t18\t男\t花果山’]
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
print('_'*62)
#根据用户的选择做相关的操作
if user _choose == '1'
#查询员工
#打印表头
print('\t序号\t姓名\t年龄\t性别\t住址')
# 显示员工信息
for emp in emps
print(emp)
pass
elif user _choose =='2':
    # 添加员工
pass
elif user _choose =='3'
# 删除员工
pass
elif user choose =='4
# 退出
print(‘欢迎使用!再见!’)
input('点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')
#打印分割线
print('_'*62)

image.png

从示例来看已经显示信息,所以之后在添加信息也是同样的格式,但序号存在问题,因为把序号写死了,如果列表分别存在1、2、3、4、5这五个信息但我把3号删了,你会发现再查询时没有了序号3。就没有三号了,所以在这个位置不能写序号,那需要在遍历中动态生成,

接下来在查询员工的代码里创建一个变量,来表示员工的序号,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个列表,用来保存员工的信息
emps =[‘孙悟空\t18\t男\t花果山’]
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
print('_'*62)
#根据用户的选择做相关的操作
if user _choose == '1'
#查询员工
#打印表头
print('\t序号\t姓名\t年龄\t性别\t住址')
# 创建一个变量,来表示员工的序号
n = 1
# 显示员工信息
for emp in emps :
print(f'\t{n}\t{emp}')
n += 1pass
elif user _choose =='2':
    # 添加员工
pass
elif user _choose =='3'
# 删除员工
pass
elif user choose =='4
# 退出
print(‘欢迎使用!再见!’)
input('点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')
#打印分割线
print('_'*62)

image.png

从示例来看这个序号是动态生成的,而不是写死的,接下来在添加一个猪八戒来看看效果,示例如下:

#显示系统的欢迎信息
print(‘-’*20, ‘欢迎使用员工管理系统’, ’_’*20)
#创建一个列表,用来保存员工的信息
emps =[‘孙悟空\t18\t男\t花果山’,'猪八戒\t28\t男\t高老庄’]
#创建一个死循环
while True:
#显示用户的选项
print('请选择要做的操作:')
print('\t1.查询员工')
print('\t2.添加员工')
print('\t3.删除员工')
print('\t4.退出系统')
user_choose = input('请选择[1-4]:')
print('_'*62)
#根据用户的选择做相关的操作
if user _choose == '1'
#查询员工
#打印表头
print('\t序号\t姓名\t年龄\t性别\t住址')
# 创建一个变量,来表示员工的序号
n = 1
# 显示员工信息
for emp in emps :
print(f'\t{n}\t{emp}')
n += 1pass
elif user _choose =='2':
    # 添加员工
pass
elif user _choose =='3'
# 删除员工
pass
elif user choose =='4
# 退出
print(‘欢迎使用!再见!’)
input('点击回车键退出!')
break
else :
print('您的输入有误,请重新选择!')
#打印分割线
print('_'*62)

image.png

从示例来看猪八戒的序号就是动态生成的,本课时8就先讲到查询员工,同学可以跟着自己操作一下,同时自己试试添加员工和删除员工的操作,然后下节课时讲。

 

相关文章
|
JSON 安全 Serverless
在使用阿里云函数计算(FC)服务时,您可以通过自定义域名来访问部署好的云函数
在使用阿里云函数计算(FC)服务时,您可以通过自定义域名来访问部署好的云函数【1月更文挑战第23天】【1月更文挑战第112篇】
516 7
|
SQL 数据库
MyBatisPlus-null判定及查询指定字段
MyBatisPlus-null判定及查询指定字段
1140 0
|
8月前
|
数据安全/隐私保护
5分钟注册一个可用Gemini的谷歌邮箱账号
5分钟注册一个可用Gemini的谷歌邮箱账号
2560 23
5分钟注册一个可用Gemini的谷歌邮箱账号
|
9月前
|
安全 Linux 数据安全/隐私保护
linux root登陆,密码正确但,错误提示su: Authentication failure
通过系统化的排查和解决方案,可以有效应对 `su: Authentication failure` 问题,确保系统安全和用户权限的正确管理。
4990 36
|
弹性计算 数据管理 数据库
从零开始构建员工管理系统:Python与SQLite3的完美结合
本文介绍如何使用Python和Tkinter构建一个图形界面的员工管理系统(EMS)。系统包括数据库设计、核心功能实现和图形用户界面创建。主要功能有查询、添加、删除员工信息及统计员工数量。通过本文,你将学会如何结合SQLite数据库进行数据管理,并使用Tkinter创建友好的用户界面。
510 2
从零开始构建员工管理系统:Python与SQLite3的完美结合
|
9月前
|
机器学习/深度学习 人工智能 JSON
当 GIS 遇上 AI 大模型
当 GIS 遇上 AI 大模型
337 1
HTML URL可以有多少种写法
URL有多种类型,包括绝对URL,其包含完整路径;相对URL,则基于当前文档位置。此外有协议相对URL,不指定协议;锚点URL用于定位页面内特定位置;邮政URL用于创建邮件链接;电话URL用于拨打电话;文件URL指向本地文件;数据URL则直接在HTML中嵌入小文件,如图片。
|
8月前
|
存储 运维 监控
首次!阿里云可观测技术论文登上两大国际顶会
首次!阿里云可观测技术论文登上两大国际顶会
149 0
|
8月前
|
云安全 人工智能 安全
阿里云欧阳欣:AI时代下的安全新范式
阿里云欧阳欣:AI时代下的安全新范式
|
自然语言处理 网络协议 算法
UDP协议和报文格式,校验和,CRC的含义
UDP协议和报文格式,校验和,CRC的含义