This repository has been archived on 2024-06-23. You can view files and clone it, but cannot push or open issues or pull requests.
mathdeptv2/工具/识别题库中尚未标注的题目类型.ipynb

88 lines
2.2 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"040387 填空题\n",
"040388 填空题\n",
"040389 填空题\n",
"040390 填空题\n",
"040391 填空题\n",
"040392 填空题\n",
"040393 填空题\n",
"040394 填空题\n",
"040395 解答题\n"
]
}
],
"source": [
"import os,re,json\n",
"\n",
"# 读取数据库并转成题目字典\n",
"with open(r\"../题库0.3/Problems.json\",\"r\",encoding = \"utf8\") as f:\n",
" database = f.read()\n",
"pro_dict = json.loads(database)\n",
"\n",
"#根据特征字符识别题目类型\n",
"for p in pro_dict:\n",
" if pro_dict[p][\"genre\"] == \"\":\n",
" if \"bracket\" in pro_dict[p][\"content\"]:\n",
" pro_dict[p][\"genre\"] = \"选择题\"\n",
" print(p,\"选择题\")\n",
" elif \"blank\" in pro_dict[p][\"content\"]:\n",
" pro_dict[p][\"genre\"] = \"填空题\"\n",
" print(p,\"填空题\")\n",
" else:\n",
" pro_dict[p][\"genre\"] = \"解答题\"\n",
" pro_dict[p][\"space\"] = \"12ex\"\n",
" print(p,\"解答题\")\n",
"\n",
"#将修改结果写入json数据库\n",
"database = json.dumps(pro_dict,indent = 4, ensure_ascii= False)\n",
"with open(r\"../题库0.3/Problems.json\",\"w\",encoding = \"utf8\") as f:\n",
" f.write(database)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "pythontest",
"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": "91219a98e0e9be72efb992f647fe78b593124968b75db0b865552d6787c8db93"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}