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

简介: 本内容介绍EMS项目练习中的“添加员工”功能。通过四个Input输入框获取新员工的姓名、年龄、性别和住址信息,并将其格式化为字符串后添加到员工列表中。为了提高用户体验,在添加前会弹出确认提示,用户可以选择是否确认添加。确认后显示“插入成功”,取消则显示“插入已取消”。该功能确保了数据的准确性和操作的可控性。

EMS项目练习_添加员工

 

摘要:本内容为EMS项目练习:添加员工

 

添加员工顾名思义是向列表中添加一个新员工,添加员工要明确的第一个问题是添加谁,添加员工就是将元素添加在列表中,添加员工之前要获取添加员工的信息:姓名、年龄、性别、住址,这些信息由用户输入,此时需要四个Input。

第一个输入姓名,即 Name

print('_'*20,'欢迎使用员工管理系统",'_'*20)
emps =['孙悟空\t18\t男\t花果山’,‘猪八戒\t28\t男\t高老庄’]
while True:
Emp_name = input(‘请输入员工的姓名:‘)
Emp_age = input(‘请输入员工的年龄:‘) 
Emp_gender = input(‘请输入员工的性别:‘) 
Emp_address = input(‘请输入员工的住址:‘)  
emps.append(f'{emp_name}\t{emp_age}\t{emp_gender}\t{emp_address}')
pass
elif user _choose ==’3’:
pass
elif user _choose ==’4’:
print('欢迎使用!再见!)
input('点击回车键退出!')
Break
Else:
print('您的输入有误,请重新选择!')
print('-'*62)


获取四个信息,将四个信息拼接为一个字符串,插入列表

插入列表即 Emps,直接写一个Emps,若想在列表最后插入元素,使用 Append ,Append的结构应该与’孙悟空 \t 18\t 男 \t 花果山‘一致,内容改为需要输入的信息,第一步将其改为格式化字符串,孙悟空改为 Emp_name ,t 18改为 Emp_age ,t 男改为 Emp_gender ,t 花果山改为Emp_address 。

回顾之前的课程,除了用_ 还可以使用 %s等很多种方式。

保存代码,运行,先查询,此时只有两个员工孙悟空和猪八戒,执行添加

请输入员工的姓名:沙和尚

请输入员工的年龄:38

请输入员工的性别:男

请输入员工的住址:流沙河

保存执行,添加员工成功

image.png

此时出现一个问题不合理:例如添加一个人员 aa ,虽然添加成功,但在原输入地没有提示

请输入员工的姓名:aa

请输入员工的年龄:bb

请输入员工的性别:cc

请输入员工的住址:dd

image.png

image.png

合理情况下应该有一个“将把 aa 添加,是否确认该操作”的提示,此时在添加之前应该显示一个提示信息

print('_'*20,'欢迎使用员工管理系统",'_'*20)
emps =['孙悟空\t18\t男\t花果山’,‘猪八戒\t28\t男\t高老庄’]
while True:
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}’  //创建员工信息
Input('员工:',emp,’将会被添加到系统中,是否确认该操作[Y/N]:')  //显示一个提示信息,Y 表示同意,N 表示不同意
Emps.append(emp)
pass
elif user _choose ==’3’:
pass
elif user _choose ==’4’:
print('欢迎使用!再见!)
input('点击回车键退出!')
Break
Else:
print('您的输入有误,请重新选择!')
print('-'*62)


操作或改数据时,要弹出一个提示,询问用户是否确认此操添加一个员工信息,执行,程序报错

image.png

while True:

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}’  //创建员工信息
Input(‘员工:’+emp+’ 将会被添加到系统中,是否确认该操作[Y/N]:’)
Emps.append(emp)
pass
elif user _choose ==’3’:
pass
elif user _choose ==’4’:
print('欢迎使用!再见!)
input('点击回车键退出!')
Break
Else:
print('您的输入有误,请重新选择!')
print('-'*62)


Input 只能传递一个参数,如果使用 Input,就不可以使用,而是要写为Input(‘员工:’+emp+’ 将会被添加到系统中,是否确认该操作[Y/N]:’)才可以。

执行结果:输入正确,但显示不雅观,将其改为

image.png

while True:
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}’  //创建员工信息
Input(‘员工:’+emp+’ 将会被添加到系统中,是否确认该操作[Y/N]:’)
Print(‘以下员工将被添加到系统中’)
Print(‘姓名\t年龄\t性别\t住址’)
Print(‘emp’)
Print(‘是否确认该操作[Y/N]’)
Emps.append(emp)
pass
elif user _choose ==’3’:
pass
elif user _choose ==’4’:
print('欢迎使用!再见!)
input('点击回车键退出!')
Break
Else:
print('您的输入有误,请重新选择!')
print('-'*62)


执行结果:显示正确

image.png

想要显示更清晰,可以在其上下各加一个分割线

while True:
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}’  //创建员工信息
Input(‘员工:’+emp+’ 将会被添加到系统中,是否确认该操作[Y/N]:’)
Print(‘以下员工将被添加到系统中’)
Print(‘_’*62)
Print(‘姓名\t年龄\t性别\t住址’)
Print(‘emp’)
Print(‘_’*62)
Print(‘是否确认该操作[Y/N]:’)
Emps.append(emp)
pass
elif user _choose ==’3’:
pass
elif user _choose ==’4’:
print('欢迎使用!再见!)
input('点击回车键退出!')
Break
Else:
print('您的输入有误,请重新选择!')
print('-'*62)


 

保存执行:显示是否确认该操作[Y/N]

image.png

功能不断完善,此时用户会有一个选择 [Y/N],接收变量

User_confirm = input(‘是否确认该操作[Y/N]:’),用户的接收信息,此时可以判断:

If user_confirm == ’y’ ;

如果等于 y ,即确认,确认之后直接 Append

Emps.append(emp)

如果不确认,要考虑多种情况,可能输 y ,也可能输 Yes ,

If user_confirm == ’y’ or user_confirm == ’yes’ ;

Else:即什么都没有,也即取消操作,取消操作就什么都不做,先Pass,保存执行,添加员工,选择 Y,添加成功;选择 N,不添加

while True:
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}’  //创建员工信息
Input(‘员工:’+emp+’ 将会被添加到系统中,是否确认该操作[Y/N]:’)
Print(‘以下员工将被添加到系统中’)
Print(‘_’*62)
Print(‘姓名\t年龄\t性别\t住址’)
Print(‘emp’)
Print(‘_’*62)
Print(‘是否确认该操作[Y/N]:’)
If user_confirm == ’y’ or user_confirm == ’yes’ ; //判断
Emps.append(emp) //确认
Else:
//取消操作
Pass
Emps.append(emp)
pass
elif user _choose ==’3’:
pass
elif user _choose ==’4’:
print('欢迎使用!再见!)
input('点击回车键退出!')
Break
Else:
print('您的输入有误,请重新选择!')
print('-'*62)

image.png

image.png

成功插入,应显示提示信息插入成功,取消操作,也应该显示提示信息插入已取消

while True:
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}’  //创建员工信息
Input(‘员工:’+emp+’ 将会被添加到系统中,是否确认该操作[Y/N]:’)
Print(‘以下员工将被添加到系统中’)
Print(‘_’*62)
Print(‘姓名\t年龄\t性别\t住址’)
Print(‘emp’)
Print(‘_’*62)
Print(‘是否确认该操作[Y/N]:’)
If user_confirm == ’y’ or user_confirm == ’yes’ ; //判断
Emps.append(emp) //确认
print(‘插入成功!’)//显示提示信息
Else:
print(‘插入已取消!’)//取消操作
Pass
Emps.append(emp)
pass
elif user _choose ==’3’:
pass
elif user _choose ==’4’:
print('欢迎使用!再见!)
input('点击回车键退出!')
Break
Else:
print('您的输入有误,请重新选择!')
print('-'*62)


保存,添加员工信息,选择 Y ,显示插入成功,选择 N ,显示插入已取消

image.png


确认是可选择的,可以先不加确认,添加成功之后再确认。接下来就是删除,删除要根据序号删除。

相关文章
|
XML Java 数据库连接
mybatis中在xml文件中通用查询结果列如何使用
mybatis中在xml文件中通用查询结果列如何使用
816 0
|
3月前
|
存储 人工智能 数据可视化
阿里云万小智 AI 建站系统全解析:版本功能、价格体系与场景适配
在企业数字化转型与个人建站需求增长的背景下,阿里云基于通义大模型推出的万小智 AI 建站系统,以 “低门槛、高效率、全集成” 为核心优势,成为无需专业开发能力用户的重要选择。该系统分为基础版、标准版、企业版三个层级,覆盖从个人博客到中大型企业官网的全场景需求,且购买即赠 CN 域名,进一步降低建站成本。本文结合今年最新官方文档与实测体验,从核心特性、版本差异、价格规则、场景适配等维度展开解析,为用户提供客观选型参考。
|
7月前
|
前端开发 JavaScript API
一文吃透 Promise 与 async/await,异步编程也能如此简单!建议收藏!
在前端开发中,异步编程至关重要。本文详解了同步与异步的区别,通过生活化例子帮助理解。深入讲解了 Promise 的概念、状态及链式调用,并引入 async/await 这一语法糖,使异步代码更清晰易读。还介绍了多个异步任务的组合处理方式,如 Promise.all 与 Promise.race。掌握这些内容,将大幅提升你的异步编程能力,写出更优雅、易维护的代码,助力开发与面试!
387 0
一文吃透 Promise 与 async/await,异步编程也能如此简单!建议收藏!
|
6月前
|
存储 缓存 算法
软考通关密钥:计算机系统核心原理全解剖——软件设计师必懂的底层逻辑
专为软考中级软件设计师打造,深入解析CPU架构、存储体系、进制转换、原码补码、浮点数、寻址方式、校验码、RISC/CISC、流水线、Cache、中断、I/O控制、总线及加密技术等核心知识点,结合真题剖析高频考点,构建计算机系统底层知识体系,提升应试与实践能力。
490 1
软考通关密钥:计算机系统核心原理全解剖——软件设计师必懂的底层逻辑
|
5月前
|
弹性计算 监控 数据可视化
怎么使用阿里云的云监控服务?
阿里云云监控(CloudMonitor)提供免费、实时的云资源与应用性能监控服务,支持ECS、RDS等产品及网站、API监控。具备全方位监控、智能告警、数据可视化等功能,可通过控制台轻松设置监控项与阈值,及时发现异常,保障系统稳定运行。
|
5月前
|
JSON 缓存 API
淘宝天猫商品详情API秘籍!轻松获取SKU属性数据
淘宝商品详情API(taobao.item.get)可获取商品标题、价格、SKU、库存等全量信息,支持RESTful调用,返回JSON数据,适用于电商导购与竞品分析。需企业实名认证,申请权限后通过签名加密请求。Python示例展示如何调用接口,配合fields参数可优化性能,应对频率限制与数据延迟建议轮询+缓存策略。
|
7月前
|
存储 机器学习/深度学习 缓存
阿里云服务器4核8G配置租用价格:不同实例收费标准、活动价格对比与选购参考
4核8G配置是深受初创企业用户喜欢的云服务器配置,2025年截止目前,按量收费标准最低降至0.45元/小时,包年包月租用平均优惠月价最低仅需159.84元/月,按年购买还可享受u1实例4核8G活动价955.58元/年起的价格。云服务器实例规格和配置不同,收费标准与活动价格也不同,下面是小编为大家整理汇总的阿里云服务器4核8G配置2025年最新收费标准与活动价格。
980 5
阿里云服务器4核8G配置租用价格:不同实例收费标准、活动价格对比与选购参考
2024阿里云技术年报 基础设施篇
2024阿里云技术年报 基础设施篇
324 11
|
8月前
|
分布式计算 关系型数据库 MySQL
【赵渝强老师】大数据交换引擎Sqoop
Sqoop是一款开源工具,用于在Hadoop与传统数据库如Oracle、MySQL之间传输数据。它基于MapReduce实现,支持数据导入导出、生成Java类及Hive表结构等操作,适用于大数据处理场景。
208 3
【赵渝强老师】大数据交换引擎Sqoop
|
10月前
|
小程序 数据安全/隐私保护
二维码也能做业务介绍?一文看懂这种低成本、高效率的展示方式
使用二维码来展示业务内容,具备展示形式多样、内容实时更新、长期有效等优势,适合应用在公司简介、个人名片、酒店民宿入住、旅游路线介绍等多种场景。草料二维码免费即可使用,零基础也可轻松搭建业务介绍二维码
二维码也能做业务介绍?一文看懂这种低成本、高效率的展示方式

热门文章

最新文章