员工信息表作业
Posted Optimus丶G
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了员工信息表作业相关的知识,希望对你有一定的参考价值。
# 只实现作业要求的查询功能 # 增加,删除,修改功能为选做题 # 创建员工信息表 # 用户输入查询命令 # 分析用户输入的命令,从命令中提取需要查询的关键字 # 根据关键字来查询内容并输出 staff_table=r\'F:\\python文件\\day21生成器\\员工信息表.txt\' def select(cmd1): #查询功能 with open(staff_table) as f: path=f.readlines() #读出多行赋值给path staff_l=[{ \'staff_id\': i[0], \'name\': i[1], \'age\': i[2], #以列表套字典的形式遍历员工信息 \'phone\': i[3], \'dept\': i[4], \'enroll_date\': i[5] } for i in[line.strip().split(\',\') for line in path]] #把列表的元素连城字符串并分隔出select与from之间的内容赋值给变量 kebianchang=\'\'.join(cmd1).split(\'select\')[1].split(\'from\')[0].split(\',\') #把用户输入的命令后三个元素赋值给变量 xiangmu=cmd1[-3] fuhao=cmd1[-2] tiaojian=cmd1[-1] #定义变量用于计数 count=0 for i in staff_l: if fuhao == \'=\': #判断用户输入命令的几种情况 if i[xiangmu] == tiaojian: print_content(kebianchang, i) count+=1 elif fuhao == \'>\': if i[xiangmu] > tiaojian: print_content(kebianchang, i) count += 1 elif fuhao == \'<\': if i[xiangmu] < tiaojian: print_content(kebianchang, i) count += 1 elif fuhao == \'like\': if tiaojian in i[xiangmu].split(\'-\'): print_content(kebianchang, i) count += 1 else: print(\'输入错误\') print(\'查询到%s条信息\'%count) def print_content(kebianchang,i): # 输出用户输入的需求对应的内容 if kebianchang == [\'*\']: print([i[k] for k in i]) else: print([i[k] for k in kebianchang]) while True: cmd=input(\'cmd: \').strip() cmd1=cmd.split() select(cmd1)
以上是关于员工信息表作业的主要内容,如果未能解决你的问题,请参考以下文章