Python如何自动生成考试试卷?
- 更新时间:2021-08-02 09:22:37
- 编辑:姜弘壮
给寻找编程代码教程的朋友们精选了相关的编程文章,网友蔡烨赫根据主题投稿了本篇教程内容,涉及到Python相关内容,已被920网友关注,下面的电子资料对本篇知识点有更加详尽的解释。
参考资料
- Python与量化投资:从基础到实战 PDF 电子书 / 248.2 MB / 王小川 推荐度:
- Python强化学习实战(含源码) PDF 电子书 / 98.5 MB / Sudharsan 推荐度:
- Python程序设计 PDF 电子书 / 17.9 MB / 约翰·策勒 推荐度:
- 《人脸识别与美颜算法实战:基于Python、机器学习与深度学习》源代码 配套资源 / 7.23 MB / 方圆圆 推荐度:
- Python3.6零基础入门与实战 PDF 电子书 / 518.9 MB / 王启明 推荐度:
正文内容
给学习python的读者整理一篇《Python如何自动生成考试试卷?》优秀文章,好东西应该跟大家分享,改了一下错误代码,觉得好就请收藏下。
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、模板文件
打开模板文件,可以看到,有3处1、内容需要更换。分别是页眉、标题、循环体。其中循环体为嵌套结构,外循环根据tbl_contents序列进行迭代,内循环根据cols列表进行迭代。tr代表行,tc代表列。
2、实现代码
from docxtpl import DocxTemplate import os import random import pymysql cur_path = os.path.dirname(__file__) tempfilename = os.path.join(cur_path, 'template', '加法模板.docx') savefilename = os.path.join(cur_path, '加法.docx') tpl = DocxTemplate(tempfilename) list1 = [] def build_data(): for x in range(25): items = {} list2 = [] for y in range(4): num1 = random.randint(0,99) num2 = random.randint(0,99) list2.append(f'{num1}+{num2}=') items.setdefault('cols', list2) list1.append(items) context = { 'title': '100以内加法试卷(100道)', 'tbl_contents': list1, 'header': '加法试卷', 'footer': '2020-09-13', } tpl.render(context) tpl.save(savefilename) if __name__ == "__main__": build_data()
输出结果:
是不是非常有趣呢,能够实现生成试卷的方法有很多,大家可以掌握python与word这其中一种办法,希望可以帮助大家学习掌握。
相关教程
-
如何设置PyCharm中的Python代码模版(推荐)
这篇文章主要介绍了如何设置PyCharm中的Python代码模版,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
发布时间:2021-05-02
-
python的一些加密方法及python 加密模块
这篇文章主要介绍了python的一些加密方法及python加密模块,本文通过实例文字相结合的形式给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
发布时间:2019-09-08