From df57929d48aaa17b191a405989135aa64c68ebc6 Mon Sep 17 00:00:00 2001 From: "weiye.wang" Date: Sat, 10 Feb 2024 15:50:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E9=97=B2=E5=B9=B3=E5=8F=B0=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E6=97=B6=E5=8A=A0=E5=85=A5=E4=BA=86=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E6=9C=89=E5=A4=A7=E4=BA=8E1=E7=9A=84?= =?UTF-8?q?=E6=AD=A3=E7=A1=AE=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 工具v2/database_tools.py | 9 +++++++++ 工具v2/收集使用记录.py | 11 +++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/工具v2/database_tools.py b/工具v2/database_tools.py index f82eda44..1adea771 100644 --- a/工具v2/database_tools.py +++ b/工具v2/database_tools.py @@ -1903,5 +1903,14 @@ def gitdiff(commitid1,commitid2,fileinrepo="题库0.3/Problems.json",tempfilepat diff_list.append((id,current_diff.copy())) return (new_or_deleted_list,diff_list) + +def CheckUsagesValidity(data): #检查使用记录数据是否合理(没有超过1的), 若有则返回1, 合理则返回0 + diffs = re.findall(r"\s(\d+\.\d{3})[\s\n$]",data) + for d in diffs: + if float(d)>1: + print(f"有{d}, 数据有问题") + return 1 + return 0 + if __name__ == "__main__": print("数据库工具, import用.") \ No newline at end of file diff --git a/工具v2/收集使用记录.py b/工具v2/收集使用记录.py index fcf897f6..1cac4c9e 100644 --- a/工具v2/收集使用记录.py +++ b/工具v2/收集使用记录.py @@ -1,6 +1,6 @@ -zipfilepath = r"D:\temp\222816958193777036586_基础赋能卷8_高三_数学.zip" +zipfilepath = r"C:\Users\weiye\Downloads\可选_222816958193934270733_基础赋能卷9_高三_数学.zip" # zipfilepath = r"D:\temp\222817041862672707412_控江中学2023学年第一学期高一数学期末考试_高一_数学.zip" -date = "20240125" +date = "20240118" threshold = 0.75 #设置最低提交人数比例 @@ -35,8 +35,11 @@ validcols,marks = generateColIndexandMarks(statsfilepathlist,statsfilename,paper dfcurrent = pd.read_excel(os.path.join(statsfilepathlist[0],statsfilename)) correspondence_dict = generateIDtoUsageCorrespondence(idlist,validcols,dfcurrent.iloc[1,validcols]) output = CalculateUsages(statsfilepathlist,statsfilename,gradename,threshold,marks,correspondence_dict,validcols,date) -SaveTextFile(output,"文本文件/metadata.txt") -print("数据文件已输出至metadata.txt") +if CheckUsagesValidity(output) == 0: + SaveTextFile(output,"文本文件/metadata.txt") + print("数据文件已输出至metadata.txt") +else: + print("数据有误, 可能需要检查每一题的满分数据")