• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python实现某考试系统生成word试卷

python 搞代码 4年前 (2022-01-07) 11次浏览 已收录 0个评论

这篇文章主要为大家详细介绍了python实现某考试系统生成word试卷,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了python实现某考试系统生成word试卷的具体代码,供大家参考,具体内容如下

提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

准备条件

1.试题excel信息,存放在名为data.xls的excel文件中

2.安装python依赖的模块信息

 pip install xlrd pip install  python-docx

提示:以下是本篇文章正文内容,下面案例可供参考

编码实现

 #!/bin/bash env python import xlrd import  random from  docx import  Document from docx.shared import Pt, RGBColor from docx.enum.text import  WD_ALIGN_PARAGRAPH #打开excel data = xlrd.open_workbook('data.xls') #获取工作表 sheet = data.sheet_by_index(0) class Question: pass def create_question(): question_list = [] for i in range(sheet.nrows): if i>2: #创建试题类 question = Question() question.ID = sheet.cell(i,0).value #添加试题的题目信息 question.subject = sheet.cell(i,1).value #添加题目类型 question.question_type = sheet.cell(i,2).value #添加试题选项 question.option = [] question.option.append(sheet.cell(i, 3).value)  # A question.option.append(sheet.cell(i, 4).value)  # B question.option.append(sheet.cell(i, 5).value)  # C question.option.append(sheet.cell(i, 6).value)  # D #添加分值 question.score = sheet.cell(i,7).value question_list.append(question) #将试卷题目随机打乱并且返回 random.shuffle(question_list) return question_list def create_papper(file_name,paper_name,question_list): #创建一个文档对象 document = Document() #设置页眉的位置信息 section = document.sections[0] header = section.header p1 = header.paragraphs[0] p1.text = paper_name #设置页脚信息 footer = section.footer p2 = footer.paragraphs[0] p2.text = '内部试题,禁止泄露' #写入试卷基本信息 titile = document.add_heading(paper_name,level=1) #设置对齐方式 titile.alignment = WD_ALIGN_PARAGRAPH.CENTER #添加一个段落 p3 =  document.add_paragraph() p3.add_run('姓名:____') p3.add_run('班级:____') p3.alignment =  WD_ALIGN_PARAGRAPH.CENTER #写入试题信息 for i,question in enumerate(question_list): subject_paragraph = document.add_paragraph() #添加一个段落 run = subject_paragraph.add_run(str(i+1)+str(question.subject)) #添加题目信息 run.bold = Tr<i style="color:transparent">来源gaodai$ma#com搞$代*码网</i>ue #设置加粗 subject_paragraph.add_run('【%s】分'%str(question.score)) #打乱选项的顺序 random.shuffle(question.option) for index,option in enumerate(question.option): document.add_paragraph(('ABCD')[index]+str(option)) #保存试题 document.save(file_name) return if __name__ == '__main__': question_list = create_question() #循环生成100份试卷 for item in range(1,100): create_papper('2021第'+str(item)+'套内部考试试题.docx','2021第一季度内部考试',question_list) print('over')

实现效果

总结

该案例综合使用了xlrd模块和python-docx模块的一个读写练习

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持gaodaima搞代码网

以上就是python实现某考试系统生成word试卷的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python实现某考试系统生成word试卷

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址