将word格式题库转换成Excel格式
因为工作业务需要整理题库,很多情况下,拿到的文本是word格式,不便于上传到网站平台供学习,形式如下:

需要将其整理成如下格式:

代码
#encoding='utf-8'
import pandas as pd
import re
with open('02.txt',encoding='UTF8') as f: #将题目首先存到.txt里
line = f.read()
line = line.replace(' ','\n') #将答案A,B,C,D分开
#print(line)
pattern = '\n'
new = re.split(pattern,line)
new =[item.strip() for item in new ]
while '' in new:
new.remove('')
new =[new[i:i+5] for i in range(0,len(new),5)]
import random
df =pd.DataFrame(columns=['试题标题','选项A','选项B','选项C','选项D','答案'])
answer =['A','B','C','D']
out_file = 'out.csv'
num = 1
pattern ='1.....'
for item in new:
print(item)
lis=[]
rand = random.randint(1,4) #之前答案均为A,因此需要打乱,避免都是A选项
temp = item[1] #取出A选项
del item[1] #删掉A选项
item.insert(rand,temp)
item.append(answer[rand-1])#将答案附加在后面
lis2=[]
for item2 in item:
item2 = re.sub(pattern,'',item2)
item2 = re.sub('A.','',item2)
item2 = re.sub('B.','',item2)
item2 = re.sub('C.','',item2)
item2 = re.sub('D.','',item2)
lis2.append(item2)
df.loc[num] = lis2
num +=1
df.to_csv(out_file,index=True,header=False,mode='a')
df
文件保存到out.txt里,整理出来的形式如下:

933

被折叠的 条评论
为什么被折叠?



