1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| #调用库函数 from openpyxl import Workbook,load_workbook from openpyxl.styles import Font,colors#利用这些可以自行设置字体和颜色
#文本读取函数 def readTxt(file): ls=list() with open(file,'r',encoding='utf-8-sig') as f: for line in f.readlines(): #异常处理机制 try: index1=line.index('、') index2=line.index('(') number=line[:index1] question=line[index1+1:index2] answer=line[index2::]#利用切片准确截取主体信息 ls.append((number,question,answer))#以元组的形式追加进空列表 except: print('wrong format!') #返回一个列表 return ls
#题目写入函数 def write_excel_xlsx1(path, sheet_name, value): index = len(value)#列表中所含元组的个数,从而确定写入Excel的行数 #打开Excel wb=load_workbook(path) #创建工作簿 sheet=wb.create_sheet(sheet_name) #设置格式 sheet.column_dimensions['B'].width=115 #按行加入 for i in range(index): sheet.append(value[i]) #保存文件 wb.save(path) print("题目写入数据成功!") #主函数 if__name__=='__main__': book_name_xlsx = r'C:\Users\jl\Desktop\《Python程序设计》题库.xlsx'#文件路径,根据自己的需要自行修改 wb=Workbook() wb.save(book_name_xlsx) #工作簿名称 sheet_name_xlsx1 = '判断题' sheet_name_xlsx2 = '填空题' art1 = readTxt(r'C:\Users\jl\Desktop\《Python程序设计》题库-判断题.txt')#调用读取函数 art2 = readTxt(r'C:\Users\jl\Desktop\《Python程序设计》题库-填空题.txt') #插入表头 art1.insert(0,('序号','试题','答案')) art2.insert(0,('序号','试题','答案')) write_excel_xlsx1(book_name_xlsx, sheet_name_xlsx1, art1)#调用写入函数 write_excel_xlsx1(book_name_xlsx, sheet_name_xlsx2, art2)
|