From 1c3bea663978ac060606ae32f85991c312278467 Mon Sep 17 00:00:00 2001 From: wangweiye7840 Date: Tue, 27 Jun 2023 10:56:16 +0800 Subject: [PATCH] =?UTF-8?q?database=5Ftools=E4=B8=AD=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=AF=B9=E5=8D=95=E6=9D=A1usage=E8=BF=9B=E8=A1=8C=E5=88=86?= =?UTF-8?q?=E8=AF=8D=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 工具v2/database_tools.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/工具v2/database_tools.py b/工具v2/database_tools.py index 1e2b55d1..ea9bb758 100644 --- a/工具v2/database_tools.py +++ b/工具v2/database_tools.py @@ -473,5 +473,23 @@ def ModifyMetadata(prodict,objdict,fieldsdict,metadatafilepath,pendingdatafilepa print("字段 %s 不可按此方式修改"%field) return feedback # 已在数据库中修改, 之后需要将数据库写入一次, 返回1表示字段名有误, 返回其他表示成功进行了修改 +def parseUsage(usagestring): #对单行usage信息进行分词 + usagedict = {} + datalist = re.sub(r"\s+",r"\t",usagestring.strip()).split("\t") + if re.findall(r"20[\d]{2,6}",datalist[0]) != [] and re.findall(r"[\u4e00-\u9fa5]",datalist[0]) == []: + date = datalist.pop(0) + else: + date = "" + usagedict["date"] = date + if re.findall(r"[高一二三班]",datalist[0]) != []: + classid = datalist.pop(0) + else: + classid = "" + usagedict["classid"] = classid + usagedict["subproblems"] = len(datalist) + usagedict["difficulties"] = [float(u) for u in datalist] + usagedict["glossdiff"] = round(sum(usagedict["difficulties"])/usagedict["subproblems"],3) + return usagedict #返回词典, 含date日期, classid班级标识, subproblems小题数目, difficulties得分率, glossdiff小题平均得分率 + if __name__ == "__main__": print("数据库工具, import用.") \ No newline at end of file