{ "cells": [ { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "正在生成: 赋能17答案\n", "0\n", "正在生成: 赋能18答案\n", "0\n", "正在生成: 赋能19答案\n", "0\n", "正在生成: 赋能20答案\n", "0\n", "正在生成: 赋能21答案\n", "0\n", "正在生成: 赋能22答案\n", "0\n", "正在生成: 赋能23答案\n", "0\n", "正在生成: 赋能24答案\n", "0\n", "正在生成: 赋能25答案\n", "0\n", "正在生成: 赋能26答案\n", "0\n", "正在生成: 赋能27答案\n", "0\n", "正在生成: 赋能28答案\n", "0\n", "正在生成: 赋能29答案\n", "0\n", "正在生成: 赋能30答案\n", "0\n" ] } ], "source": [ "import os,re,json\n", "\n", "# filename = r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\第二轮复习讲义\\09_立体几何综合.tex\"\n", "filelist = [r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能17.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能18.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能19.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能20.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能21.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能22.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能23.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能24.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能25.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能26.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能27.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能28.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能29.tex\",\n", "r\"C:\\Users\\weiye\\Documents\\wwy sync\\23届\\赋能\\赋能30.tex\"\n", "]\n", "pdf_dir = \"临时文件\"\n", "\n", "for filename in filelist:\n", " outfilename = os.path.split(filename)[1][:-4]+\"答案\"\n", " print(\"正在生成: \",outfilename)\n", " with open(filename,\"r\",encoding = \"u8\") as f:\n", " data = f.read()\n", " with open(\"../题库0.3/Problems.json\",\"r\",encoding = \"u8\") as f:\n", " pro_dict = json.loads(f.read())\n", "\n", " ids = re.findall(r\"\\((\\d{6})\\)\",data)\n", "\n", " output_data = \"\"\n", " for id in ids:\n", " problemset = pro_dict[id]\n", " content = problemset[\"content\"]\n", " solution = problemset[\"solution\"]\n", " answer = \"\\\\textcolor{red}{\" + (problemset[\"ans\"] if problemset[\"ans\"] != \"\" else \"\\\\textcolor{blue}{暂无答案}\") + \"}\"\n", " output_data += \"\\\\item \" + \"(\"+id+\") \" + content + \"\\n\\n\" + \"答案: \" + answer + \"\\n\\n\" \n", "\n", " with open(\"模板文件/日常选题讲义模板.txt\",\"r\",encoding = \"u8\") as f:\n", " outlatex = f.read()\n", "\n", " outlatex = outlatex.replace(\"待替换1\",output_data)\n", " outlatex = outlatex.replace(\"标题文字待处理\",outfilename)\n", "\n", " outfile = os.path.join(\"临时文件\",outfilename+\".tex\")\n", " with open(outfile,\"w\",encoding=\"u8\") as f:\n", " f.write(outlatex)\n", "\n", " outfile = outfile.replace(\"\\\\\",\"/\")\n", "\n", " os.system(\"xelatex -interaction=batchmode -output-directory=\" + pdf_dir + \" \"+ outfile)\n", " print(os.system(\"xelatex -interaction=batchmode -output-directory=\" + pdf_dir + \" \"+ outfile))\n", "\n", " " ] }, { "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 }