python-查询员工信息表
基本要求:
用户可以模糊查询员工信息
显示匹配了多少条,匹配字符需要高亮显示
代码:
- #!/usr/env python
- #coding:utf-8
- import time
- def BreakFlag(): #用于设置标志位
- while True:
- Break_Flag=raw_input('\t\t\t是否继续?(y/n):')
- if Break_Flag=='y' or Break_Flag=='n':
- return Break_Flag
- else:
- print '''''\t\t输入错误,请重新输入!'''
- Info_File=open(r'information.txt','r') #只读方式打开员工信息表文件
- Employee_Info=Info_File.readlines() #生成一个员工信息列表,列表中元素为员工信息字符串
- Info_File.close() #关闭员工信息表文件
- Break_Flag=''
- print '''''\n\t\t\t\t\033[34;1m您好,欢迎来到员工信息查询系统!\033[0m\n'''
- while Break_Flag!='n':
- while True:
- Search_Info=raw_input('''''\n\t\t\t请输入您需要查询的信息:''')
- if len(Search_Info)>2: #判断输入字符长度,小于3个字符,则需要重新输入
- break
- else:
- print '''''\n\t\t\t\033[31;1m您输入信息太少,请重新输入!\033[0m\n'''
- count_number=0
- Search_Info_List=[]
- for i in Employee_Info:
- if i.count(Search_Info)>0:
- #将搜索到的字符串进行替换,并追加到Search_Info_List列表中
- Search_Info_List.append(i.replace(Search_Info,'''''\033[42;31;1m%s\033[0m''' % Search_Info))
- count_number+=1 #一条记录匹配成功
- #count_number+=i.count(Search_Info)#统计每次搜寻到的字符串的个数,并进行累加
- if count_number>0:
- #若搜寻到字符串,将统计到的字符串总个数和包含字符串的列表进行屏幕打印
- print '''''\n\t\t\t共查询到:\033[31;1m %s \033[0m条信息!\n''' % count_number
- for i in Search_Info_List:
- print i
- else:
- print '''''\n\t\t\t\033[31;1m没有您查找的信息!\033[0m\n'''
- Break_Flag=BreakFlag()
- for i in range(3):
- print '''''\n\t\t\t\033[31;5m谢谢使用员工信息查询系统,%s秒后,退出系统\033[0m''' % (3-i)
- time.sleep(1)
- exit('\n\t\t\t\t您已经退出员工查询系统!')
- #import sys
- #sys.exit('\n\t\t\t\t您已经退出员工查询系统!')
假定员工信息存放在 information.txt文件中,如下:
song@ubuntu:~$ more information.txt
name:marry age:23 sex:man job:IT
name:song dada age:23 sex:man job:HR
name:zhang sanfeng age:23 sex:man job:IT
name:zhang wuji age:23 sex:man job:accountant
name:ling huchong age:23 sex:man job:IT
name:xiaoping age:23 sex:man job:manager
name:li yuanfang age:23 sex:man job:IT
name:feng feng age:23 sex:man job:boss
运行程序,示例如下:
python-查询员工信息表的更多相关文章
- python作业员工信息表程序(第四周)
作业需求: 1. 员工信息表程序,实现增删改查操作: 2. 可进行模糊查询,语法至少支持下面3种: select name,age from staff_table where age > 22 ...
- day12 python作业:员工信息表
作业要求: 周末大作业:实现员工信息表文件存储格式如下:id,name,age,phone,job1,Alex,22,13651054608,IT2,Egon,23,13304320533,Tearc ...
- python练习题-员工信息表
周末大作业:实现员工信息表文件存储格式如下:id,name,age,phone,job1,Alex,22,13651054608,IT2,Egon,23,13304320533,Tearcher3,n ...
- python写员工信息表作业笔记
需求 流程图
- python基础之员工信息表作业
周末大礼包 文件存储格式如下: id, name, age, phone, job 1, Alex, 22, 13651054608, IT 2, Egon, 23, 13304320533, Tea ...
- python's sixteenth day for me 员工信息表
import os user_dic = { 'username':None, 'password':None, 'login':True } flag = False name_list = ['i ...
- Python员工信息表练习
1.用户可以模糊查询员工信息 2.显示匹配了多少条,匹配字符需要高亮显示 employee_db.txt 总经办 龚丽丽 总经理 男 -- 1月18日 汉 族 中共党员 已婚 总经办 李惠 副总经理 ...
- python-打印简单公司员工信息表
python-打印简单公司员工信息表 要求,输入name不为空,输入次数最多3次,3次后跳出程序: 知识点: raw_input str转int whil if elif else continue ...
- python3 员工信息表
这是最后一条NLP了......来吧 十二,动机和情绪总不会错,只是行为没有效果而已 动机在潜意识里,总是正面的.潜意识从来不会伤害自己,只会误会的以为某行为可以满足该动机,而又不知道有其他做法的可能 ...
随机推荐
- TCP协议握手与分手
TCP(Transmission Control Protocol) 传输控制协议 TCP的7次握手可以理解为3次握手和4次分手. TCP状态转换图,如下: 这个图N多人都知道,它对排除和定位网络或系 ...
- Android SlidingMenu开源库及其使用
极客学院教程: http://www.jikexueyuan.com/course/61_5.html?ss=1 1. SlidingMenu开源库的配置 2. SlidingMenu 的使用 --- ...
- 提供进销存、ERP系统快速开发框架源码 (C#+SQL)
C/S系统开发框架-企业版 V4.0 (Enterprise Edition) 简介: http://www.csframework.com/cs-framework-4.0.htm 视频下载: 百度 ...
- Android RecyclerView Adapter 新式用法之SortedListAdapterCallback
引言 前几天在同事的提醒下发现V7中有了一个新的工具类SortedListAdapterCallback,配合RecyclerView Adapter和SortedList一起使用更加方便的管理我们在 ...
- D题 - A+B for Input-Output Practice (III)
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Description Your ...
- An endpoint configuration section for contract "serviceReferenc.service" could not be loaded
场景:有一个WCF应用,添加服务引用后,自动生成一个app.config文件,当调用WCF时,它抛出一个错误: An endpoint configuration section for contra ...
- BZOJ 1059 矩阵游戏
Description 小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏--矩阵游戏.矩阵游戏在一个\(N \times N\)黑白方阵进行(如同国际象棋一般,只是颜色是随意的). ...
- [BZOJ 1874] [BeiJing2009 WinterCamp] 取石子游戏 【博弈论 | SG函数】
题目链接:BZOJ - 1874 题目分析 这个是一种组合游戏,是许多单个SG游戏的和. 就是指,总的游戏由许多单个SG游戏组合而成,每个SG游戏(也就是每一堆石子)之间互不干扰,每次从所有的单个游戏 ...
- [BZOJ 1875] [SDOI 2009] HH去散步【矩阵乘法】
题目链接:BZOJ - 1875 题目分析: 这道题如果去掉“不会立刻沿着刚刚走来的路走回”的限制,直接用邻接矩阵跑矩阵乘法就可以了.然而现在加了这个限制,建图的方式就要做一些改变.如果我们把每一条边 ...
- NYOJ 540
为了给学弟学妹讲课,我水了一道题…… import java.util.Arrays; import java.util.Scanner; public class NYOJ540 { public ...