发布时间:2026-07-21阅读(1)
根据用户需求条件进行排序(例如:按照各科成绩和总成绩进行升序、降序排列展示数据)


自定义函数方法 sort() 根据条件进行升序、降序排列展示数据
# 自定义sort()函数方法实现数据排序功能def sort(): # 调用show() 函数方法进行数据展示 show() # 判断文件是否存在 if os.path.exists(filename): with open(filename,r,encoding=utf-8) as rfile: student_lst = rfile.readlines() # 自定义变量接收循环遍历数据 student_new = [] # 遍历循环数据输出 for item in student_lst: stu_dict = dict(eval(item)) # 将遍历后的字典数据添加到变量中 student_new.append(stu_dict) else: return # 定义变量接收用户条件(升降序) asc_or_desc = input(请选择排序方式(0.升序,1.降序):) # 根据用户输入条件进行判断并排序 if asc_or_desc == 0: # 定义升序 为False asc_or_desc_bool = False elif asc_or_desc == 1: # 定义降序 True asc_or_desc_bool = True else: print(您的输入有误,请重新输入!) # 调用方法重新执行 sort() mode = input(请选择排序方式(1.按用于成绩排序,2.按Python成绩排序,3.按Java成绩排序,0.按总成绩排序):) if mode == 1: student_new.sort(key=lambda x:int(x[english]),reverse=asc_or_desc_bool) elif mode == 2: student_new.sort(key=lambda x:int(x[python]),reverse=asc_or_desc_bool) elif mode == 3: student_new.sort(key=lambda x:int(x[java]),reverse=asc_or_desc_bool) elif mode == 0: student_new.sort(key=lambda x:int(x[english]) int(x[python]) int(x[java]),reverse=asc_or_desc_bool) else: print(您的输入有误,请重新输入!) sort() # 显示数排序后的数据 show_student(student_new)
自定义函数方法 total()统计数据总数


# 自定义函数方法 total() 统计数据总数def total(): # 判断文件是否存在 if os.path.exists(filename): # 以只读方式(r)打开文件 with open(filename,r,encoding=utf-8) as rfile: # 定义变量接受读取到的全部数据 student_lst = rfile.readlines() # 判断 student_lst if student_lst: print(f一共有{len(student_lst)}名学生!) else: print(暂未查询到数据信息!) else: print(暂未查询到数据!请核实或录入数据!)
Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图