From 1baa8a0f361f2892dc2f3447fca65fb3b4be4730 Mon Sep 17 00:00:00 2001 From: WangWeiye Date: Tue, 18 Apr 2023 14:35:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=98=93=E9=94=99=E9=A2=98=E6=9D=A5=E6=BA=90?= =?UTF-8?q?=E6=B8=85=E7=82=B9=E5=8A=9F=E8=83=BD=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 工具/错题重做来源清点.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/工具/错题重做来源清点.py b/工具/错题重做来源清点.py index 1b250644..c4591631 100644 --- a/工具/错题重做来源清点.py +++ b/工具/错题重做来源清点.py @@ -1,6 +1,7 @@ import os,re,json outputfile = "临时文件/已做题目.txt" +classid = "2023届高三02班" new_dir = r"C:\Users\weiye\Documents\wwy sync\23届\四月错题重做" old_dirs = [ @@ -27,6 +28,7 @@ with open(r"../题库0.3/Problems.json","r",encoding="u8") as f: data = f.read() pro_dict = json.loads(data) +# 收集数据构建已做过的题目的id与试卷-题号-题序对应字典 id_resp_dict = {} for dir in old_dirs: @@ -55,19 +57,29 @@ for texfile in new_texfiles: print(",".join(ids)) for id in ids: if id in id_resp_dict: + results = "\n".join([(id + "\t" + r) for r in pro_dict[id]["usages"] if classid in r]) print("(%s)\t(已做题)\t%s"%(id,",".join(id_resp_dict[id]))) + print(results) output += "(%s)\t(已做题)\t%s\n"%(id,",".join(id_resp_dict[id])) + output += results + "\n" elif id_related: rel_ids = pro_dict[id]["related"] origins = [] - for id in rel_ids: - if id in id_resp_dict: - origins += id_resp_dict[id] + for id1 in rel_ids: + if id1 in id_resp_dict: + origins += id_resp_dict[id1] print("(%s)\t(关联题)\t%s"%(id,",".join(origins))) output += "(%s)\t(关联题)\t%s\n"%(id,",".join(origins)) + for id1 in rel_ids: + results = "\n".join([(id1 + "\t" + r) for r in pro_dict[id1]["usages"] if classid in r]) + print(results) + output += results + "\n" else: print("(%s)\t(无关题)") output += "(%s)\t(无关题)\n" + results = "\n".join([(id + "\t" + r) for r in pro_dict[id]["usages"] if classid in r]) + print(results) + output += results + "\n" print("") output += "\n"