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"