zoukankan      html  css  js  c++  java
  • 编写可供用户查询的员工信息表(一)

    编写可供用户查询的员工信息表

    要求:

    1.需要用户认证

    2.员工信息表文件内容:

      ID  Name  Department  Phone

    3.认证成功后查询正确信息 

    代码: 

    #!/usr/bin/env python                                                           #声名python 解释器,env可根据环境寻找并运行默认版本
    authen_dic = {"LiuPn":123,"WangXiaoMing":123456,"HaoXiaoBei":12345678}          #定义一个字典存放可登陆的用户及密码
    usr_list = list(authen_dic.keys())                                              #操作字典转生成一个用户列表
    while True:
        input_usr = input("Please input your username: ")                           #用户交互第一步:请输入用户名
        if usr_list.count(input_usr) >= 1:                                          #假设输入的用户名在用户名列表里出现次数大于等于1
            input_passwd = input("Please input %s's password: "% input_usr)         #用户交互第二步:请输入密码
            passwd = str(authen_dic[input_usr])                                     #操作字典取出用户密码并格式化为字符串
            while input_passwd != passwd:                                           #假设密码不相等时进入循环
                input_passwd = input("Password is incorrect!Try again:")
            else:                                                                   #对应前面,密码不正确时
                print("Logon successful!Welcome")                                   #打印成功信息
                while True:                                                         #登陆成功后进入while循环
                    match_yes = 0                                                   #定义一个变量初始值与后面的赋值对应
                    sch_input = input("33[1;34;42mPlease enter what the information you need to search: ")
                                                                                    #请输入你想查找的信息
                    InfoOfEmTab_file = open("TheInfoOfEmployeeTable.txt")           #对文件进行操作,打开员工信息表文件
                    while True:
                        line = InfoOfEmTab_file.readline()                          #读取文件的每一行
                        if len(line) == 0: break                                    #读取到文件结尾后结束退出
                        if sch_input in line:                                       #假设用户输入的内容在信息表文件的其中一行中
                            print("33[1;31mMarch Item: 33[1;36m%s" % line)      #格式化输出打印信息
                            match_yes = 1                                           #满足条件后给变量赋予新值(注:变量赋值不输出任何信息)
                    if match_yes == 0:                                              #变量值如果等于初始值则打印信息(这里变量初始值对应上一条件里给变量赋予了一个新的值,所以可以理解成变量值不等于1,即用户输入的内容不在信息表的任一行里)
                        print("33[1;31mNo match items had found!Please check it and try again.
    ")
        else:                                                                       #对应之前用户名输入不正确
            print("The user name:%s is not found. Please re-enter your username." % input_usr)
    

     效果预览:

    下一篇内容:https://www.cnblogs.com/easypython/p/9080972.html

    (未完待续)

  • 相关阅读:
    【spring源码学习】spring的IOC容器之自定义xml配置标签扩展namspaceHandler向IOC容器中注册bean
    【spring源码学习】spring的IOC容器在初始化bean过程
    【spring源码学习】Spring的IOC容器之BeanPostProcessor接口学习
    Zookeeper之Zookeeper的Client的分析
    Zookeeper之Zookeeper底层客户端架构实现原理(转载)
    【LIUNX】目录或文件权限,权限授予
    Java 8 日期时间API使用介绍
    Java 8中的 Streams API 详解
    Java 8 Lambda表达式介绍
    Java中Comparable和Comparator区别小结
  • 原文地址:https://www.cnblogs.com/easypython/p/9080561.html
Copyright © 2011-2022 走看看