41 lines
1.2 KiB
Python
41 lines
1.2 KiB
Python
import os,re,json
|
|
"""这里编辑题号(列表)后将在vscode中打开窗口, 编辑后保存关闭"""
|
|
problems = "14758"
|
|
editor = "王伟叶"
|
|
|
|
def generate_number_set(string,dict):
|
|
string = re.sub(r"[\n\s]","",string)
|
|
string_list = string.split(",")
|
|
numbers_list = []
|
|
for s in string_list:
|
|
if not ":" in s:
|
|
numbers_list.append(s.zfill(6))
|
|
else:
|
|
start,end = s.split(":")
|
|
for ind in range(int(start),int(end)+1):
|
|
numbers_list.append(str(ind).zfill(6))
|
|
return numbers_list
|
|
|
|
with open(r"../题库0.3/Problems.json","r",encoding = "utf8") as f:
|
|
database = f.read()
|
|
pro_dict = json.loads(database)
|
|
|
|
idlist = generate_number_set(problems,pro_dict)
|
|
|
|
output = "编辑者: " + editor + "\n\n\\begin{enumerate}\n\n"
|
|
|
|
for id in idlist:
|
|
output += "\\item (%s) "%str(id).zfill(6) + pro_dict[id]["content"] + "\n\n"
|
|
|
|
output += "\\end{enumerate}"
|
|
|
|
with open("模板文件/题目编辑.txt","r",encoding="u8") as f:
|
|
texdata = f.read()
|
|
|
|
newtexdata = texdata.replace("待替换",output)
|
|
|
|
with open("临时文件/problems_edit.tex","w",encoding="u8") as f:
|
|
f.write(newtexdata)
|
|
|
|
os.system(r"code -g 临时文件/problems_edit.tex")
|