0918

import sys
import os
informationDictTemp = {}
UserName = ""
staff_table = "information.txt"
informationMap = {"0":"serial","1":"name","2":"age","3":"telephone","4":"dept","5":"hiredate"}
#登录
def login():
     print(loadData(staff_table))
     count =3
     judgeDict = {}
     with open("user_information.txt","r",encoding="utf-8") as f:
         for  i  in  f.readlines():
            data = i.strip().split(",")
            judgeDict.setdefault(data[0],data[1])
     while not count is None:
         global  UserName
         print("欢迎进入个人信息修改系统".center(50,"*"))
         UserName = input("请输入用户名字:").strip().title()
         PassWord = input("请输入用户密码:").strip()
         if count >1:
             if UserName in judgeDict.keys() and PassWord == judgeDict[UserName]:
                 return print("恭喜你,登录成功。。。")
             else:
                 count-=1
                 print("sorry,你输入的用户名和密码有误,请重新输入!")
                 continue
         else:
             print("连续登录三次错误,系统将自动退出!")
             sys.exit()

#解析文件parse
def loadData(file_name):
    with open(file_name,"r",encoding="utf-8") as f:
        for  i  in  f.readlines():
            data = i.strip().split(",")
            informationDictTemp.setdefault(data[1],data[2:])
        return informationDictTemp


#查询
def findFun(para1,para2,para3):
    print(para1)
    logicSymbol = [">","<","=",">=","<=","like"]
    # if  para1[0] in informationMap.values() and para1[1] in logicSymbol:
    if  para1=="*" and not  para2.__contains__("like"):
        # judge_condition = "".join(para3[1:])
        # for i in informationDictTemp.keys():
        #     informationMap.append(informationDictTemp[i][0])
        # print(informationMap)
        location = list(informationMap.values()).index(para2[0])+2
        # result  = {k:v for k,v in informationDictTemp.items() if eval("int(v[location]) >9") }
        result  = {k:v for k,v in informationDictTemp.items() if int(v[0]) > 9}
        printInfoFun(result)
        print(informationDictTemp)
        for k,v in informationDictTemp.items():
            print(k,v)

    elif para1=="*" and   para2.__contains__("like"):
        print()

    else:
        print()

    # else:
    #     print("表中不包含你过滤项目或条件语法有误")
def xx(x,y):
    print(x+y)


#打印信息
def printSelfInfoFun():
    global  UserName
    print("""
***************************
    Name:{0}
    Age:{1[0]}
    PhoneNumber:{1[1]}
    Dept:{1[2]}
    HireDate:{1[3]}
***************************
    """.format(UserName,informationDictTemp[UserName]))

def printInfoFun(a):
    print("serialno","name".rjust(10," "),"age".rjust(5," "),"telephone".rjust(5," "),
          "dept".rjust(5," "),"hiredate".rjust(5," "))
    count = 0
    for index,con  in  a.items():
        print(count,index.rjust(20," ")," ".join(con))
        count+=1




# 创建
def createFun():
    print()




#删除
def deleteFun(para1,para2):
    print()





#修改
def modifyFun():
    print()


login()
print("欢迎进入个人信息查询系统,请输入合法语法指令".center(50,"-"))
while 1:
    command = input(">>>>>>>").strip()
    print(command)
    splitResult = command.split()
    para1 = splitResult[1]
    # para2 = splitResult[splitResult.index("from"):splitResult.index("where")+1]
    para2 = splitResult[(splitResult.index("where"))+1:]
    print(para2)
    para3 = ""
    print(para1,para2,para3)
    if command.startswith("find"):
        print("find")
        # print("{0}的个人信息如下:\n{1}".format(UserName,informationDict[UserName]))
        findFun(para1,para2,para3)
        continue
    elif command.startswith("add"):
        createFun()
        continue
    elif command.startswith("del"):
        deleteFun()
        continue

    elif command.startswith("update"):
        print("{0}的个人信息如下:\n{1}".format(UserName,informationDictTemp[UserName]))
        modifyFun()
        continue
    else:
        print("输入指定有误,请重新输入!")
        continue

猜你喜欢

转载自www.cnblogs.com/wjy123/p/9666907.html