zoukankan      html  css  js  c++  java
  • 员工信息表作业

    #     只实现作业要求的查询功能
    #     增加,删除,修改功能为选做题
    # 创建员工信息表
    # 用户输入查询命令
    # 分析用户输入的命令,从命令中提取需要查询的关键字
    # 根据关键字来查询内容并输出
    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)
  • 相关阅读:
    js 截取指定的字符串
    WebSocket实例 Vue中使用websoket
    Vue 水半球样式、圆形水进度条、在线编辑
    Elasticsearch学习笔记3 -- 文档操作
    Elasticsearch学习笔记2 -- 索引库的操作
    Elasticsearch学习笔记1 -- 安装elasticsearch
    Docker学习笔记5 -- Docker-compose
    Docker学习笔记4 -- Dockerfile
    Docker学习笔记3 -- 数据卷
    Docker学习笔记2 -- 常用命令
  • 原文地址:https://www.cnblogs.com/78pikaqiu/p/7045177.html
Copyright © 2011-2022 走看看