职员信息管理系统
要求依次从键盘录入每位员工的信息,包括姓名、员工id、身份证号
要求:
1、身份证号十八位,要求除了第18位可以为x,其余都只能为数字
2、id须由5位数字组成
3、否则提示用户重新输入不符合规则的那几项
4、能随时查看已录入的员工及其信息
info_list = [] #用来存放所有职员数据,每一个职员的数据都是一个列表

while True:
# 1、界面
print("-------职员信息管理系统-------")
print("--1、添加职员信息")
print("--2、删除职员信息")
print("--3、查看所有职员信息")
print("--4、退出管理系统")
print("-"*30)
# 2、输入、接收用户的输入的数字,执行对应操作
command = int(input("请输入1到4之间的数字,进行相应操作:"))
# 3、通过判断用户输入的数字来执行对应的操作
if command == 1:
#添加员工信息
#让用户输入姓名、员工ID、身份证号
em_name = input("请输入员工姓名:")
#获取员工id,长度为5位,并且只能为纯数字
while True:
em_work_id = input("请输入员工ID:")
if len(em_work_id) == 5 and em_work_id.isdigit():
break else:
print("【ERROR】:员工ID必须为5位数字") #身份证号18位,要求除了第18位可以x,其余都只能为数字
while True:
em_id_num = input("请输入员工身份证号:")
if len(em_id_num) == 18 and em_id_num[0:17].isdigit() and (em_id_num[-1] in "0123456789xX"):
break
else:
print("【ERROR】:员工身份证号必须为18位,且除了第18位可以为x或者X,其余都是数字!")
info_list.append([em_name,em_work_id,em_id_num])
print("【INFO】:添加成功!") elif command == 2:
#删除员工信息
em_name = input("请输入姓名:")
#遍历info_list这个列表(找到这个人)
for i in info_list:
if em_name in i:
#在这个列表中就执行删除
info_list.remove(i)
print("【INFO】:删除成功!")
break #找到了此人,所以后面不再需要遍历
else:
print("【ERROR】:查无此人!")
elif command == 3:
#查询所有员工信息
print("【INFO】:所有员工信息如下")
print(info_list)
elif command == 4:
#退出系统
print("【INFO】:退出成功!谢谢使用")
else:
print("【ERROR】:请重新输入1到4之间的数字!")

python 写简单的职员信息管理系统的更多相关文章

  1. 【python免费代码】设计一个简单的学生信息管理系统

    文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...

  2. 从零开始,编写简单的课程信息管理系统(使用jsp+servlet+javabean架构)

    一.相关的软件下载和环境配置 1.下载并配置JDK. 2.下载eclipse. 3.下载并配置apache-tomcat(服务器). 4.下载MySQL(数据库). 5.下载Navicat for M ...

  3. PHP实现简单的学生信息管理系统(web版)

    (∩_∩) 1.概述 学了php的一些基础,包括HTML,php,pdo,mysql操作等,一直都没有将它们有机结合.最近写了一个简单的网页版学生信息管理系统,前台用HTML,脚本用到了JavaScr ...

  4. C++ 简单的学生信息管理系统

    // // main.cpp // 2013-7-17作业1 // // Created by 丁小未 on 13-7-17. // Copyright (c) 2013年 dingxiaowei. ...

  5. Python——面向对象,简易学生信息管理系统

    一.概述 1.1涉及到的知识点 项目开发:创建项目,创建包,导入包: 面向对象:静态方法,继承,内置函数,自定义函数: 数据类型:列表,字典,字符串.列表.字典的转换和自动生成导向: 异常处理:捕获异 ...

  6. 爬虫入门-使用python写简单爬虫

    从第一章到上一章为止,基本把python所有的基础点都已经包括了,我们有控制逻辑的关键字,有内置数据结构,有用于工程需要的函数和模块,又有了标准库和第三方库,可以写正规的程序了. python可以做非 ...

  7. 用Python写简单的爬虫

    准备: 1.扒网页,根据URL来获取网页信息 import urllib.parse import urllib.request response = urllib.request.urlopen(& ...

  8. 程序阅读:简单C++学生信息管理系统

    课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接 [程序阅读]阅读并执行以下的程序,找出当中出现 ...

  9. 【Python开发】【神经网络与深度学习】如何利用Python写简单网络爬虫

    平时没事喜欢看看freebuf的文章,今天在看文章的时候,无线网总是时断时续,于是自己心血来潮就动手写了这个网络爬虫,将页面保存下来方便查看   先分析网站内容,红色部分即是网站文章内容div,可以看 ...

随机推荐

  1. wx.setStorage、wx.getStorage和wx.getStorageSync

    Page({ data: { testnum:""//设置测试参数 }, test:function(){ var Num = this.data.testnum; wx.setS ...

  2. idea 下运行安卓项目

    修改 gralde 路径修改安卓sdk路径进入project structure 设置 Project settings / Project /project SDK 选择 Android API 2 ...

  3. C++入门经典-例5.17-右值引用的定义

    1:右值引用的定义: 类型 && i=被引用的对象: 左值与右值的区别在于,右值是临时变量,例如,函数的返回值,并且无法被改变. 当右值引用被初始化后,临时变量消失. 代码如下: // ...

  4. Java第09次实验(流与文件)

    第一次实验 0. 字节流与二进制文件 1.使用DataOutputStream与FileOutputStream将Student对象写入二进制文件student.data 二进制文件与文本文件的区别 ...

  5. spark 笔记 6: RDD

    了解RDD之前,必读UCB的论文,个人认为这是最好的资料,没有之一. http://www.cs.berkeley.edu/~matei/papers/2012/nsdi_spark.pdf A Re ...

  6. mysql数据库简单补充

    1.只有拥有特定权限的用户才能执行特定的操作.就好像我们在现实生活中,一般没有权利进入军事禁区,除非我们被某个很有权利并且可以指定其他人进入军事基地的人赋予了进入军事禁区的权利. 命令: GRANT ...

  7. 源码编译apache报错的解决方法

    源码编译apache报错的解决方法   问题介绍 在源码编译安装httpd时,./configure执行无错误,到make时就报错,在网络上搜索了很多文章,很多方法如换apr-util的低版本并不能很 ...

  8. RF变量

    变量作用域 变量类型 变量作用域 case中的变量 case内部 userkeyword中的变量 userkeyword内部 文件型suite里的变量 文件suite内部,其下case均可使用 目录型 ...

  9. Array 操作

    一.数组拉平 function arrayFlat(arr) { return arr.reduce((pre, cur) => { const temp = Array.isArray(cur ...

  10. OpenCV学习笔记(10)——图像梯度

    学习图像梯度,图像边界等 梯度简单来说就是求导. OpenCV提供了三种不同的梯度滤波器,或者说高通滤波器:Sobel,Scharr和Lapacian.Sobel,Scharr其实就是求一阶或二阶导. ...