栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python-学生管理系统--6 搜索功能模块

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python-学生管理系统--6 搜索功能模块

搜索功能模块:

核心思路:

1.每次选择id或者name查询的时候,并不是同时进行的,每次只能查询一个,也就是一次你只能查询id或者name进行查询,查询的信息存入列表中,使用完毕后,清除列表

2.   # 显示查询结果
            show_student(student_queryn),调用的这个函数

# 查询函数,涉及两个函数
# search
# 定义显示查询结果的函数 show_student(query_student)
#
def search():
    student_queryn=[]

    while True:
        id=''
        name=''
        if os.path.exists(filename):
            mode=input("按ID查找请输入1,按姓名查找请输入2:")
            if mode=='1':
                id=input("请输入学生ID")
            elif mode == '2':
                name=input("请输入学生姓名")
            else:
                print("你输入有误,请重新输入")
                search()   #输入错误的话,重新调用函数自己

            with open(filename,'r',encoding="utf-8") as rfile:
                student=rfile.readlines()
                for item in student:
                    d=dict(eval(item))
                    if id!="":
                        if d['id']==id:
                            student_queryn.append(d)   #把查找到的id相等添加到列表中
                    elif name!="":
                        if d['name']==name:
                            student_queryn.append(d)

            # 显示查询结果
            show_student(student_queryn)
            #清空列表
            student_queryn.clear()

            answer=input("是否要继续查询?y/nn")

            if answer=='y':
                continue
            else:
                break



        else:
            print("暂未保存学生信息")
            return

show_student(student_queryn)

调用的函数;------>目的把每个内容以规定格式的方式打印出来。

def show_student(lst):
    if len(lst)==0:
        print("没有查询到学生信息,无数据显示!!!")
        return
    # 定义标题显示格式
    format_title='{:^6}t{:^12}t{:^8}t{:^10}t{:^10}t{:^8}'
    print(format_title.format('ID','姓名','英语成绩','python成绩','java成绩','总成绩'))

    # 定义内容显示格式
    format_data = '{:^6}t{:^12}t{:^8}t{:^8}t{:^8}t{:^8}'

    for item in lst:
        print(format_data.format(item.get('id'),
                                 item.get('name'),
                                 item.get('english'),
                                 item.get('python'),
                                 item.get('java'),
                                 int(item.get('english'))+int(item.get('python'))+int(item.get('java'))

                                 ))

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/649794.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号