功能说明:python
(1)用户认证功能,只有输入对的用户名和密码后才能查询
(2)能够查员工的ID,Name,部门,电话
(3)查询的接口关键字是姓名,用户经过姓名来查其余关联相关信息。
(4)查完了输出用户信息,若是查询失败,报没有这个用户,而后循环起来数据库
python源代码以下(经过读取外部文件来导入数据)ide
#!/usr/bin/env python # encoding=utf-8 # author:sihaogongyuan # date:2015-4-5 # desc:2015-4-5 test import sys import os #输出系统当前的时间,并分隔#################################### print os.system('date'),'\n','#################################' #假设数据库中的name和password都为admin manage_name_db='admin' manage_password_db='admin' ################################################################# #定义死循环,使用户能够直接循环输入要查询的东西 while True: #让用户输入管理员名称 manage_name=raw_input('please input your manage name:') #若是用户输入的管理员名称和定义的数据库中名称同样,则让用户输入管理密码 if manage_name==manage_name_db: manage_password=raw_input('please input your manage password:') #当用户输入的管理员密码和db库中的密码不一致时,提示用户再次输入管理密码 #直到密码输入成功 while manage_password!=manage_password_db: manage_password=raw_input('manage password is error,please try again:') #直到用户密码输对了,跳出密码的这个while循环,执行后面的else语句 else: #打印出欢迎界面,来到软件 print '\033[32mwelcome to my contact_select_software!\033[0m' #定义用户查询信息代码断,涉及到用户屡次查询,因此定义while循环 while True: #定义match变量,初始赋值为NO,表明不匹配 match='NO' #定义select_name变量,做为被查询的用户名 select_name=raw_input('please input you select name:') #若是select_name变量为空的话,提示用户从新输入用户名,直到非空 #此时直接按回车键,表明传递过去的也是空字符串,注意 while select_name.strip()=='': select_name=raw_input('please input you select name:') #打开外部关联文件/tmp/python/contact.txt,默认只读模式 select_file=file('/tmp/python/contact.txt') #为每次读取文件中的每一行,作一个循环 while True: #line变量的值就是每次调用readline()函数,每次取出一行内容 line=select_file.readline() #len函数判断该行中的字符串数量,若是数量为0表明到文件末,已经读取出了 #最后一行,跳出读取文件的while循环 if len(line)==0: break #当要搜索的名称在该行中,输出该行全部内容 elif select_name in line: print '%s'%(line) #把变量match赋值为YES match='YES' else : pass #pass为空指令,什么都不执行 #若是要搜索的用户名在全部的行中都没有的话,经过len(line)==0,最后break #跳出了读取文件内容的while循环,由于初始的match变量内容为NO,表明没有匹 #配到,若是文件中出现过搜索的内容的话,match变量就被置为1了。 if match!='YES': print 'no match founded' #当用户输入的管理员帐户与db库中的管理员帐户不一致的时候,提示用户输入错了,从新输入 #会跳到最大的while循环那去,manage_name从新接受用户的输入请求 else: print 'name is not funded,try again:'
/tmp/python/contact.txt格式以下:(中间以tab键来分隔的)函数
1 xiaohogn IT 9999999999
2 xiaopang IT 666666666
3 xiaofei IT 8888888888
spa