返回顶部
首页 > 资讯 > 后端开发 > Python >python实现某考试系统生成word试卷
  • 709
分享到

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

2024-04-02 19:04:59 709人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

本文实例为大家分享了python实现某考试系统生成Word试卷的具体代码,供大家参考,具体内容如下 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 准备条件 1.试

本文实例为大家分享了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 = True #设置加粗
        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模块的一个读写练习

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

--结束END--

本文标题: python实现某考试系统生成word试卷

本文链接: https://lsjlt.com/news/126148.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python实现某考试系统生成word试卷
    本文实例为大家分享了python实现某考试系统生成word试卷的具体代码,供大家参考,具体内容如下 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 准备条件 1.试...
    99+
    2024-04-02
  • python如何实现某考试系统生成word试卷
    小编给大家分享一下python如何实现某考试系统生成word试卷,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!提示:写完文章后,目录可以自动生成,如何生成可参考右...
    99+
    2023-06-15
  • Java实现考试系统
    本文实例为大家分享了Java实现考试系统的具体代码,供大家参考,具体内容如下 说明 这里的考试系统是指由学生,老师以及考试机构成的,学生通过用户名,密码登录考试机,考试机从题库中随机...
    99+
    2024-04-02
  • 如何设计MySQL表结构来支持在线考试系统的试卷生成与管理?
    如何设计MySQL表结构来支持在线考试系统的试卷生成与管理?在设计MySQL表结构来支持在线考试系统的试卷生成与管理之前,我们需要先了解在线考试系统的基本需求和功能。在线考试系统一般包括用户管理、试卷管理、题目管理和考试管理等模块。本文将重...
    99+
    2023-10-31
    关键词:MySQL 表结构 在线考试系统
  • 基于SSM试卷自动生成系统设计与实现是怎样的
    这篇文章将为大家详细讲解有关基于SSM试卷自动生成系统设计与实现是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。功能点: 1.后台管理员能够对用户管理,用户批量导入,用户组管理,角色管...
    99+
    2023-06-02
  • 华为od统一考试B卷【选修课】Java 实现
             所有题目均有五种语言实现。C实现目录、C++ 实现目录、Python实现目录、Java实现目录、JavaScript实现目录 题目         现有两门选修课,每门选修课都有一部分学生选修,每个学生都有选修课的成绩...
    99+
    2023-09-05
    java 开发语言 选修课 od统一考试
  • JavaOnlineExam在线考试系统的实现
    一、项目简述 本系统主要实现的功能有: 学生以及老师的注册登录,在线考试,错题查询,学生管理,问题管理,错题管理,错题查询,分数查询,试卷管 理,人工组卷。自动组卷,教师,班级,统计...
    99+
    2024-04-02
  • Python从MySQL数据库中面抽取试题,生成试卷
    一、背景 本文章主要是分享如何使用Python从MySQL数据库中面抽取试题,生成的试卷每一份都不一样。 二、准备工作 1.安装Python3 下载地址:https://www.python.org/downlo...
    99+
    2022-05-24
    python MySQL python 数据库抽取题目 python 生成试卷
  • MongoDB如何实现问卷或考试设计
    本篇文章为大家展示了MongoDB如何实现问卷或考试设计,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。MongoDB的特点MongoDB是一个面向文档存储的数据库。...
    99+
    2024-04-02
  • 【华为OD统一考试B卷 | 100分】荒岛求生(C++ Java JavaScript Python)
    在线OJ 已购买本专栏用户,请私信博主开通账号,在线刷题!!! 运行出现 Runtime Error 0Aborted,请忽略 华为OD统一考试A卷+B卷 新题库说明 2023年5月份,华为官方...
    99+
    2023-09-17
    华为od c++ java javascript python
  • 华为od统一考试B卷【五子棋迷】Java 实现
             所有题目均有五种语言实现。C实现目录、C++ 实现目录、Python实现目录、Java实现目录、JavaScript实现目录 题目 张兵和王武是五子棋迷,工作之余经常切磋棋艺。这不,这会儿又下起来了。走了一会儿,轮张...
    99+
    2023-09-03
    java 开发语言 五子棋迷 华为 OD统一考试
  • 基于python在线考试系统设计与实现
    主要讲解本系统设计到的文件和所存在路径等 系统发布和使用   系统访问 默认访问系统页面:http://127.0.0.1:8000/ 后台管理登录页面:http://127.0.0.1:8000//ht/ 默认账号admin 密码123...
    99+
    2023-09-12
    python 前端 爬虫
  • Java如何实现考试管理系统
    本篇内容主要讲解“Java如何实现考试管理系统”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java如何实现考试管理系统”吧!项目简述本系统功能包括:支持单选题、多选题、判断题支持学生(stud...
    99+
    2023-06-22
  • 基于Java实现考试管理系统
    目录项目简述项目运行项目技术效果图展示主要代码项目简述 本系统功能包括: 支持单选题、多选题、判断题支持学生(student)、教师(teacher)、管理员(admin)三种角色学...
    99+
    2024-04-02
  • 华为od统一考试B卷【宜居星球改造计划】Python 实现
             所有题目均有五种语言实现。C实现目录、C++ 实现目录、Python实现目录、Java实现目录、JavaScript实现目录  题目 2XXX年,人类通过对火星的大气进行宜居改造分析,使得火星已在理论上具备人类宜居的条...
    99+
    2023-09-04
    宜居星球改造计划 python OD统一考试 算法
  • 华为od统一考试B卷【需要打开多少监视器】Python 实现
             所有题目均有五种语言实现。C实现目录、C++ 实现目录、Python实现目录、Java实现目录、JavaScript实现目录 题目 某长方形停车场,每个车位上方都有对应监控器,当且仅当在当前车位或者前后左右四个方向任意...
    99+
    2023-09-21
    需要打开多少监视器 od统一考试 开发语言 python
  • C语言实现考试报名管理系统
    本文实例为大家分享了C语言实现考试报名管理系统的具体代码,供大家参考,具体内容如下 源代码: #include<stdio.h> #include<stdlib.h...
    99+
    2024-04-02
  • Java Online Exam在线考试系统怎么实现
    这篇文章主要介绍“Java Online Exam在线考试系统怎么实现”,在日常操作中,相信很多人在Java Online Exam在线考试系统怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好...
    99+
    2023-06-21
  • Java如何实现在线高中考试系统
    这篇文章主要介绍了Java如何实现在线高中考试系统,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。项目分为前台和后台,前台主要为学生角色、后台主要为管理员角色。管理员添加试题和...
    99+
    2023-06-29
  • 如何处理在线考试系统中的学生考试成绩数据:MySQL表结构设计技巧
    如何处理在线考试系统中的学生考试成绩数据:MySQL表结构设计技巧随着科技的发展,越来越多的教育机构开始采用在线考试系统来进行评估学生的学习成绩。在这个系统中,学生的考试成绩数据是非常重要的信息,它不仅可以用来评估学生的学习水平,还可以用来...
    99+
    2023-10-31
    MySQL 在线考试系统 表结构设计
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作