20230201 录入高二上学期校本的使用结果

This commit is contained in:
weiye.wang 2023-02-01 13:46:49 +08:00
parent e2981fbb87
commit 6e7e691d15
9 changed files with 2518 additions and 341 deletions

View File

@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
"execution_count": 10,
"execution_count": 1,
"metadata": {},
"outputs": [
{
@ -11,7 +11,7 @@
"0"
]
},
"execution_count": 10,
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
@ -19,7 +19,7 @@
"source": [
"import os,re,json\n",
"\"\"\"这里编辑题号(列表)后将在vscode中打开窗口, 编辑后保存关闭, 随后运行第二个代码块\"\"\"\n",
"problems = \"20502\"\n",
"problems = \"21106\"\n",
"\n",
"def generate_number_set(string,dict):\n",
" string = re.sub(r\"[\\n\\s]\",\"\",string)\n",
@ -75,7 +75,7 @@
],
"metadata": {
"kernelspec": {
"display_name": "pythontest",
"display_name": "base",
"language": "python",
"name": "python3"
},
@ -89,12 +89,12 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.15"
"version": "3.9.13"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "91219a98e0e9be72efb992f647fe78b593124968b75db0b865552d6787c8db93"
"hash": "ad2bdc8ecc057115af97d19610ffacc2b4e99fae6737bb82f5d7fb13d2f2c186"
}
}
},

View File

@ -0,0 +1,119 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import zipfile,os,re,time\n",
"import pandas as pd\n",
"from pathlib import Path\n",
"\n",
"#设置工作目录, 要求工作目录中恰有一个.tex文件和一个.zip文件其余不论\n",
"filepath = \"数据导入作业文件\"\n",
"\n",
"#生成文件名tex_file和zip_file\n",
"files = [os.path.join(filepath,f) for f in os.listdir(filepath)]\n",
"tex_file = [f for f in files if \".tex\" in f or \".txt\" in f][0]\n",
"zip_file = [f for f in files if \".zip\" in f][0]\n",
"\n",
"#获得题号数据保存在problems_list中\n",
"with open(tex_file,\"r\",encoding = \"utf8\") as f:\n",
" tex_data = f.read()\n",
"problems_list = [re.sub(r\"\\s+\",\"\\t\",l.strip()) for l in tex_data.split(\"\\n\") if l.strip() != \"\"]\n",
"date = problems_list.pop(0)\n",
"\n",
"\n",
"#在zip文件中找到包含正确率数据的文件\n",
"zf = zipfile.ZipFile(zip_file)\n",
"statfiles = [f.filename for f in zf.filelist if \"试题分析\" in f.filename]\n",
"handinfiles = [f.filename for f in zf.filelist if \"学生成绩\" in f.filename]\n",
"\n",
"#生成答题纸区域编号与题目ID的对应\n",
"correspondence_dict = {}\n",
"if \"statsfile.xlsx\" in os.listdir(\"临时文件\"):\n",
" os.remove(\"临时文件/statsfile.xlsx\")\n",
"extractedpath = Path(zf.extract(statfiles[0]))\n",
"extractedpath.rename(\"临时文件/statsfile.xlsx\")\n",
"df = pd.read_excel(\"临时文件/statsfile.xlsx\")\n",
"problems_indexes = list(df[df.columns[0]][2:])\n",
"\n",
"for pind in problems_indexes:\n",
" for p in problems_list:\n",
" if len(re.findall(\"^\"+pind+\"\\t\",p))>0:\n",
" correspondence_dict[pind] = p[p.index(\"\\t\")+1:]\n",
"\n",
"outputstr = \"usages\\n\\n\"\n",
"\n",
"for sf in [f for f in statfiles]:\n",
" #读取文件生成区域列表与难度列表\n",
" classname = \"2024届高二\"+re.findall(r\"高二([\\d]*?)班\",sf)[0].zfill(2)+\"班\"\n",
" if \"statsfile.xlsx\" in os.listdir(\"临时文件\"):\n",
" os.remove(\"临时文件/statsfile.xlsx\")\n",
" extractedpath = Path(zf.extract(sf))\n",
" extractedpath.rename(\"临时文件/statsfile.xlsx\")\n",
" df = pd.read_excel(\"临时文件/statsfile.xlsx\")\n",
" if \"handinfile.xlsx\" in os.listdir(\"临时文件\"):\n",
" os.remove(\"临时文件/handinfile.xlsx\")\n",
" extractedpath = Path(zf.extract(sf[:sf.find(\"数学\")]+\"学生成绩.xlsx\"))\n",
" extractedpath.rename(\"临时文件/handinfile.xlsx\")\n",
" handindf = pd.read_excel(\"临时文件/handinfile.xlsx\")\n",
" if str(handindf.iloc[int(len(handindf)*0.8)][\"Unnamed: 4\"]) != \"缺考\":\n",
" difficulties = list(df[df.columns[9]][2:])\n",
" problems_indexes = list(df[df.columns[0]][2:])\n",
" #生成该班级题目ID对应难度列表组成的字典\n",
" class_difficulty = {}\n",
" for i in range(len(difficulties)):\n",
" if problems_indexes[i] in correspondence_dict:\n",
" if not correspondence_dict[problems_indexes[i]] in class_difficulty:\n",
" class_difficulty[correspondence_dict[problems_indexes[i]]] = [difficulties[i]]\n",
" else:\n",
" class_difficulty[correspondence_dict[problems_indexes[i]]].append(difficulties[i])\n",
" #添加到输出字符串中\n",
" for id in class_difficulty:\n",
" outputstr += id + \"\\n\" + date + \"\\t\" + classname + \"\\t\" + \"\\t\".join([(\"%.3f\" %float(v)) for v in class_difficulty[id]]) + \"\\n\\n\"\n",
"\n",
"with open(\"临时文件/自动转换结果.txt\",\"w\",encoding = \"utf8\") as f:\n",
" f.write(outputstr)\n",
"with open(\"../文本文件/metadata.txt\",\"w\",encoding = \"utf8\") as f:\n",
" f.write(outputstr)\n",
"zf.close()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "mathdept",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.15"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "ff3c292c316ba85de6f1ad75f19c731e79d694e741b6f515ec18f14996fe48dc"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}

View File

@ -41,7 +41,7 @@
"\n",
"for pind in problems_indexes:\n",
" for p in problems_list:\n",
" if len(re.findall(\"^\"+pind,p))>0:\n",
" if len(re.findall(\"^\"+pind+\"\\t\",p))>0:\n",
" correspondence_dict[pind] = p[p.index(\"\\t\")+1:]\n",
"\n",
"outputstr = \"usages\\n\\n\"\n",
@ -105,12 +105,12 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.15"
"version": "3.9.15 (main, Nov 24 2022, 14:39:17) [MSC v.1916 64 bit (AMD64)]"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "42dd566da87765ddbe9b5c5b483063747fec4aacc5469ad554706e4b742e67b2"
"hash": "ff3c292c316ba85de6f1ad75f19c731e79d694e741b6f515ec18f14996fe48dc"
}
}
},

View File

@ -2,41 +2,45 @@
"cells": [
{
"cell_type": "code",
"execution_count": 21,
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"题号: 020637 , 字段: usages 中已添加数据: 20221201\t2025届高一11班\t1.000\n",
"题号: 020638 , 字段: usages 中已添加数据: 20221201\t2025届高一11班\t1.000\n",
"题号: 020639 , 字段: usages 中已添加数据: 20221201\t2025届高一11班\t1.000\n",
"题号: 020640 , 字段: usages 中已添加数据: 20221201\t2025届高一11班\t1.000\n",
"题号: 020641 , 字段: usages 中已添加数据: 20221201\t2025届高一11班\t0.977\n",
"题号: 020642 , 字段: usages 中已添加数据: 20221201\t2025届高一11班\t1.000\n",
"题号: 020643 , 字段: usages 中已添加数据: 20221201\t2025届高一11班\t0.930\t0.907\n",
"题号: 020637 , 字段: usages 中已添加数据: 20221201\t2025届高一08班\t0.778\n",
"题号: 020638 , 字段: usages 中已添加数据: 20221201\t2025届高一08班\t0.833\n",
"题号: 020639 , 字段: usages 中已添加数据: 20221201\t2025届高一08班\t0.833\n",
"题号: 020640 , 字段: usages 中已添加数据: 20221201\t2025届高一08班\t0.792\n",
"题号: 020641 , 字段: usages 中已添加数据: 20221201\t2025届高一08班\t0.903\n",
"题号: 020642 , 字段: usages 中已添加数据: 20221201\t2025届高一08班\t0.972\n",
"题号: 020643 , 字段: usages 中已添加数据: 20221201\t2025届高一08班\t1.000\t0.972\n",
"题号: 020637 , 字段: usages 中已添加数据: 20221201\t2025届高一12班\t1.000\n",
"题号: 020638 , 字段: usages 中已添加数据: 20221201\t2025届高一12班\t1.000\n",
"题号: 020639 , 字段: usages 中已添加数据: 20221201\t2025届高一12班\t1.000\n",
"题号: 020640 , 字段: usages 中已添加数据: 20221201\t2025届高一12班\t1.000\n",
"题号: 020641 , 字段: usages 中已添加数据: 20221201\t2025届高一12班\t0.941\n",
"题号: 020642 , 字段: usages 中已添加数据: 20221201\t2025届高一12班\t0.905\n",
"题号: 020643 , 字段: usages 中已添加数据: 20221201\t2025届高一12班\t0.917\t0.917\n",
"题号: 020637 , 字段: usages 中已添加数据: 20221201\t2025届高一09班\t0.774\n",
"题号: 020638 , 字段: usages 中已添加数据: 20221201\t2025届高一09班\t0.941\n",
"题号: 020639 , 字段: usages 中已添加数据: 20221201\t2025届高一09班\t0.952\n",
"题号: 020640 , 字段: usages 中已添加数据: 20221201\t2025届高一09班\t0.881\n",
"题号: 020641 , 字段: usages 中已添加数据: 20221201\t2025届高一09班\t0.952\n",
"题号: 020642 , 字段: usages 中已添加数据: 20221201\t2025届高一09班\t0.976\n",
"题号: 020643 , 字段: usages 中已添加数据: 20221201\t2025届高一09班\t1.000\t0.988\n"
"题号: 021173 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.480\n",
"题号: 021174 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.840\n",
"题号: 021175 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.920\n",
"题号: 021176 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.800\t0.600\n",
"题号: 021178 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.920\n",
"题号: 021179 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.680\n",
"题号: 021181 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.860\t0.940\n",
"题号: 021182 , 字段: usages 中已添加数据: 20221211\t2024届高二12班\t0.760\n",
"题号: 021173 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.694\n",
"题号: 021174 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.583\n",
"题号: 021175 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.792\n",
"题号: 021176 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.972\t0.917\n",
"题号: 021178 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.875\n",
"题号: 021179 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.306\n",
"题号: 021181 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.764\t0.750\n",
"题号: 021182 , 字段: usages 中已添加数据: 20221211\t2024届高二07班\t0.458\n",
"题号: 021173 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.591\n",
"题号: 021174 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.818\n",
"题号: 021175 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.977\n",
"题号: 021176 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.886\t0.682\n",
"题号: 021178 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.977\n",
"题号: 021179 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.864\n",
"题号: 021181 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.955\t0.909\n",
"题号: 021182 , 字段: usages 中已添加数据: 20221211\t2024届高二08班\t0.795\n",
"题号: 021173 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t0.318\n",
"题号: 021174 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t0.773\n",
"题号: 021175 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t0.932\n",
"题号: 021176 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t1.000\t0.273\n",
"题号: 021178 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t0.909\n",
"题号: 021179 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t0.955\n",
"题号: 021181 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t0.818\t0.818\n",
"题号: 021182 , 字段: usages 中已添加数据: 20221211\t2024届高二09班\t0.841\n"
]
}
],
@ -134,7 +138,7 @@
],
"metadata": {
"kernelspec": {
"display_name": "pythontest",
"display_name": "mathdept",
"language": "python",
"name": "python3"
},
@ -153,7 +157,7 @@
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "91219a98e0e9be72efb992f647fe78b593124968b75db0b865552d6787c8db93"
"hash": "ff3c292c316ba85de6f1ad75f19c731e79d694e741b6f515ec18f14996fe48dc"
}
}
},

View File

@ -1,86 +1,98 @@
usages
20637
20221201 2025届高一11班 1.000
21173
20221211 2024届高二12班 0.480
20638
20221201 2025届高一11班 1.000
21174
20221211 2024届高二12班 0.840
20639
20221201 2025届高一11班 1.000
21175
20221211 2024届高二12班 0.920
20640
20221201 2025届高一11班 1.000
21176
20221211 2024届高二12班 0.800 0.600
20641
20221201 2025届高一11班 0.977
21178
20221211 2024届高二12班 0.920
20642
20221201 2025届高一11班 1.000
21179
20221211 2024届高二12班 0.680
20643
20221201 2025届高一11班 0.930 0.907
21181
20221211 2024届高二12班 0.860 0.940
20637
20221201 2025届高一08班 0.778
21182
20221211 2024届高二12班 0.760
20638
20221201 2025届高一08班 0.833
21173
20221211 2024届高二07班 0.694
20639
20221201 2025届高一08班 0.833
21174
20221211 2024届高二07班 0.583
20640
20221201 2025届高一08班 0.792
21175
20221211 2024届高二07班 0.792
20641
20221201 2025届高一08班 0.903
21176
20221211 2024届高二07班 0.972 0.917
20642
20221201 2025届高一08班 0.972
21178
20221211 2024届高二07班 0.875
20643
20221201 2025届高一08班 1.000 0.972
21179
20221211 2024届高二07班 0.306
20637
20221201 2025届高一12班 1.000
21181
20221211 2024届高二07班 0.764 0.750
20638
20221201 2025届高一12班 1.000
21182
20221211 2024届高二07班 0.458
20639
20221201 2025届高一12班 1.000
21173
20221211 2024届高二08班 0.591
20640
20221201 2025届高一12班 1.000
21174
20221211 2024届高二08班 0.818
20641
20221201 2025届高一12班 0.941
21175
20221211 2024届高二08班 0.977
20642
20221201 2025届高一12班 0.905
21176
20221211 2024届高二08班 0.886 0.682
20643
20221201 2025届高一12班 0.917 0.917
21178
20221211 2024届高二08班 0.977
20637
20221201 2025届高一09班 0.774
21179
20221211 2024届高二08班 0.864
20638
20221201 2025届高一09班 0.941
21181
20221211 2024届高二08班 0.955 0.909
20639
20221201 2025届高一09班 0.952
21182
20221211 2024届高二08班 0.795
20640
20221201 2025届高一09班 0.881
21173
20221211 2024届高二09班 0.318
20641
20221201 2025届高一09班 0.952
21174
20221211 2024届高二09班 0.773
20642
20221201 2025届高一09班 0.976
21175
20221211 2024届高二09班 0.932
20643
20221201 2025届高一09班 1.000 0.988
21176
20221211 2024届高二09班 1.000 0.273
21178
20221211 2024届高二09班 0.909
21179
20221211 2024届高二09班 0.955
21181
20221211 2024届高二09班 0.818 0.818
21182
20221211 2024届高二09班 0.841

File diff suppressed because one or more lines are too long

View File

@ -2,16 +2,16 @@
"cells": [
{
"cell_type": "code",
"execution_count": 4,
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"开始编译教师版本pdf文件: 临时文件/01_集合逻辑不等式备选_教师用_20230131.tex\n",
"开始编译教师版本pdf文件: 临时文件/01_集合逻辑不等式备选_教师用_20230201.tex\n",
"0\n",
"开始编译学生版本pdf文件: 临时文件/01_集合逻辑不等式备选_学生用_20230131.tex\n",
"开始编译学生版本pdf文件: 临时文件/01_集合逻辑不等式备选_学生用_20230201.tex\n",
"0\n"
]
}
@ -188,12 +188,12 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.15"
"version": "3.9.15 (main, Nov 24 2022, 14:39:17) [MSC v.1916 64 bit (AMD64)]"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "42dd566da87765ddbe9b5c5b483063747fec4aacc5469ad554706e4b742e67b2"
"hash": "ff3c292c316ba85de6f1ad75f19c731e79d694e741b6f515ec18f14996fe48dc"
}
}
},

View File

@ -398,12 +398,12 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.15"
"version": "3.9.15"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "42dd566da87765ddbe9b5c5b483063747fec4aacc5469ad554706e4b742e67b2"
"hash": "ff3c292c316ba85de6f1ad75f19c731e79d694e741b6f515ec18f14996fe48dc"
}
}
},

File diff suppressed because it is too large Load Diff