职员信息管理系统
要求依次从键盘录入每位员工的信息,包括姓名、员工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. 【杂题】[CodeForces 1172E] Nauuo and ODT【LCT】【口胡】

    Description 给出一棵n个节点的树,每个点有一个1~n的颜色 有m次操作,每次操作修改一个点的颜色 需要在每次操作后回答树上\(n^2\)条路径每条路径经过的颜色种类数和. \(n,m< ...

  2. 论文阅读:Forwarding Metamorphosis: Fast Programmable Match-Action Processing in Hardware for SDN

    摘要: 在软件定义网络中,控制平面在物理上与转发平面分离,控制软件使用开放接口(例如OpenFlow)对转发平面(例如,交换机和路由器)进行编程. 本文旨在克服当前交换芯片和OpenFlow协议的两个 ...

  3. springCloud 搭建eureka服务之天坑

    这里我是采用gradle来管理jar包的. 1.使用idea创建一个gradle项目. 2.编辑settings.gradle文件 rootProject.name = 'jtm' //include ...

  4. R_Studio(学生成绩)对数据进行属性构造处理

    对“Gary.csv”中数据进行进行属性构造处理,增加“总成绩”属性 Gary.csv setwd('D:\\data') list.files() #数据读取 dat=read.csv(file=& ...

  5. JS基础-连续赋值

    重点:先声明,从左向右,声明变量分配内存,后赋值,从右向左 问题 var a = {n: 1}; var b = a; a.x = a = {n: 2}; console.log(a.x); cons ...

  6. 生成json文件写入本地

    public class Json { public static void main(String[] args) { String fullPath = null; //例如:fullPath=& ...

  7. mosquitto订阅发布参数详解

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  8. python3笔记二十三:正则表达式之其他函数

    一:学习内容 re.split函数 re.finditer函数 re.sub函数 group()分组 re.compile函数 二:字符串切割---re.split函数 需要导入包:import re ...

  9. Eclipse中文插件安装教程

    先运行英文版Eclipse 点击Help选择Install New Software 直接点击Add按钮 Name输入: Babel Location输入: http://download.eclip ...

  10. nodejs 配置服务器

    node 是 js 的运行的后台环境,他自身集成了很多模块,集成的模块直接 require 就行了: npm 第三方平台,他也是为 node 服务的,对于 npm 中的模块,先 npm install ...