Word题库转Excel关键字快速查询题库

一、前言

  内部培训会有Word版本题库,考核时如果使用Word、Excel、PDF等文档进行关键字查询题目体验不佳。so,撸个软件吧!
  20240728更新:支持更多题库类型。

二、Word题库转Excel

1、Word题库格式要求

内容格式要求事例
题目数字+中文顿号1、我是题目
选项英文字母+英文点A.我是选项
答案中文汉字+英文冒号答案:我是答案

2、Word题库支持题型

支持题型答案要求
单项选择题单个英文字母
多项选择题多个不重复英文字母
判断题‘√’, ‘×’, ‘对’, ‘错’
填空题、问答题等单一非空字符串(如多个填空,需把答案组合为一条记录)

3、Word题库内容展示

enter description here

4、Python转换代码

# -*- coding: cp936 -*-import docx
import openpyxl
import redef check_answer_type(answer_index):if answer_index.encode().isalpha() and len(answer_index) == 1:#单选answers.append(options_dict.get(answer_index, "Unknown"))questions_type.append("单选题")elif answer_index.encode().isalpha():#多选answers.append('\r\n'.join([options_dict.get(char, "Unknown") for char in answer_index]))questions_type.append("多选题")elif answer_index in ['√', '×', '对', '错']:#判断questions_type.append("判断题")answers.append(answer_index)else:#其他,填空/问答等questions_type.append("其他题")answers.append(answer_index)doc_path = input("输入Word文件路径:")
wb_path = input("输入Excel文件路径:")questions = []
questions_type = []
options_dict = {}
options_count = []
answers = []
answers_count = []try:# 读取Word文档doc = docx.Document(doc_path)for para in doc.paragraphs:if para.text.strip() == "":#空行continueelif re.match(r'^\d+、', para.text):#题目,数字+、print(f"正在读取:{para.text}")questions.append(para.text.strip())elif re.match(r'^[A-Z]\.', para.text):#选项,字母+.options_dict[para.text.split(".")[0].strip()] = para.text.split(".")[1].strip()elif re.match(r'^答案:', para.text):#答案,答案+:answer_index = para.text.split(":")[1].strip()check_answer_type(answer_index)options_count.append(len(options_dict))answers_count.append(len(answer_index))options_dict.clear()else:raise ValueError(f"格式错误:{para.text}")# 创建一个Excel工作簿wb = openpyxl.Workbook()ws = wb.activews.title = "题目及答案"ws['A1'] = '题目'ws['B1'] = '答案'ws['C1'] = '题目类型'ws['D1'] = '选择项个数'ws['E1'] = '答案个数或长度'# 将题目和答案写入Excel文件for i in range(len(questions)):ws[f'A{i+2}'] = questions[i]ws[f'B{i+2}'] = answers[i]ws[f'C{i+2}'] = questions_type[i]ws[f'D{i+2}'] = options_count[i]ws[f'E{i+2}'] = answers_count[i]# 保存Excel文件wb.save(wb_path)print("转换完成:题目和答案已成功写入Excel文件。")except Exception as e:print(f"发生错误:{e}")input("按任意键退出...")

5、Python打包程序下载

🔗下载链接。

6、运行报错及解决方法

  软件如若报错,打开Word题库,定位到出错的位置,检查修改至满足上诉格式要求。
enter description here

7、已知问题

  因Word题库格式存在的不确定性,难免有不可预见问题。如若软件提示转换完成,请检查核对生成Excel题库文件的正确性。

三、关键字快速查询题库

1、Excel题库格式说明

  Excel题库可用上述软件转换,也可自行制作(自行制作,仅需制作A列、B列即可)。

列数内容软件读取列
A列题目读取
B列正确答案读取
C列题目类型不读取
D列选择项个数不读取
E列答案个数或长度不读取

2、转换Excel题库检查说明

  使用转换方式获取Excel题库,请自行检查核对生成Excel题库文件的正确性,包括并不限于仅检查以下内容。

题型检查内容
单选题筛选检查选项个数是否存在遗漏,答案个数是否为1
多选题筛选检查选项个数是否存在遗漏
判断题筛选检查选项个数是否为0,答案个数是否为1,答案格式是否正确
其他题筛选检查选项个数是否为0,答案长度是否大于0
检查有效行数与Word题库数量是否一致
检查题目、答案是否有误

3、Excel题库内容展示

enter description here

4、软件下载

🔗下载链接。

5、软件使用

  ①启动软件,并打开题库
enter description here
  ②查询方式

查询方式说明
输入关键字,点击按钮查询前台查询
输入关键字,按键“ALT+S”查询前台查询
复制关键字,按键“CTRL+X”查询全局查询

  ③查询结果仅为1题时,效果展示
在这里插入图片描述
  ④查询结果为多题时,效果展示(在软件左侧上部分点击选择或输入更多关键字查询)
在这里插入图片描述
  ⑤查询结果为空时,效果展示
在这里插入图片描述
  ⑥查询题目重复,效果展示
在这里插入图片描述

四、补充说明

  1、“Word题库转Excel”开发环境:Python 3.9;
  2、“查询Excell”开发环境:.NET8;
  3、软件支持题目重复;
  4、若考核网页(软件)不支持题目复制,尝试使用浏览器插件解除复制或使用ocr软件辅助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/876764.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在 Postman 中设置全局 token

目录 问题描述解决方案 问题描述 在使用 Postman 进行接口测试时,经常会遇到在 Header 中添加 token 的情况。当接口数量较多时,需要为每个接口进行设置,而且当 token 失效时需要重新获取并设置,这样一来效率较低。 解决方案 下…

wpf中开发独立模块功能和左侧1个菜单的框架演示

此篇文章适用于有一定经验的wpf开发者,并且是团队协作开发模式,并且业务与此比较相近的话,用起来非常的方便。 我们在开发wpf程序的时候,比如1,2个人,那肯定随便怎么开发,都没事,代码…

Matlab M_map工具箱绘制Interrupted Mollweide Projection

GMT自带了许多的地图投影,但是对于Interrupted Mollweide投影效果却不好。 作为平替的m_map工具箱中带有的投影类型可完美解决这一问题。 Interrupted Mollweide Projection长这样 全球陆地 全球海洋 使用Matlab工具箱m_map展示全球海平面变化的空间分布 addpath(…

【Dart 教程系列第 49 篇】什么是策略设计模式?如何在 Dart 中使用策略设计模式

这是【Dart 教程系列第 49 篇】,如果觉得有用的话,欢迎关注专栏。 博文当前所用 Flutter SDK:3.22.1、Dart SDK:3.4.1 文章目录 一:什么是策略设计模式?二:为什么要使用策略设计模式&#xff1…

UG NX2406 安装教程

软件介绍 UG是一个交互式CAD/CAM(计算机辅助设计与计算机辅助制造)系统,它功能强大,可以轻松实现各种复杂实体及造型的建构。 它在诞生之初主要基于工作站,但随着PC硬件的发展和个人用户的迅速增长,在PC上的应用取得了迅猛的增长…

西蒙学习法

西蒙学习法 一根筋,挖死坑;会思考,持续不断的思考;会问问题,有深度的问题;一直想一个问题的解决办法; 资料 《世界十大学习方法》之西蒙学习法

【HarmonyOS】应用推送使用个推SDK如何实现?

【HarmonyOS】应用推送使用个推SDK如何实现? 前言 个推和极光都是市面上很成熟的推送第三方SDK了。今天讲讲个推SDK在鸿蒙中如何集成使用。 存在即合理,三方SDK推送给我们带来了极大的好处,首先在服务器后台处理一套API就可搞定&#xff0…

Matlab 命令行窗口默认输出(异常)

目录 前言Matlab 先验知识1 异常输出的代码2 正常输出的代码 前言 在单独调试 Matlab 写的函数时出现不想出现的异常打印值,逐个注释排查才找到是 if elseif else 代码块的问题,会默认打印输出 else 部分第一个返回值的值(下方代码中的 P值&…

基于jeecgboot-vue3的Flowable流程仿钉钉流程设计器-抄送服务处理

因为这个项目license问题无法开源&#xff0c;更多技术支持与服务请加入我的知识星球。 1、因为仿钉钉设计器里抄送人是一个服务任务&#xff0c;所以要根据这个服务任务进行处理 2、前端就是一个抄送&#xff0c;选择人 3、这里用了jeecg的选择人组件 <el-form-item prop…

昇思25天学习打卡营第10天|xiaoyushao

从今天开始做一些实践应用&#xff0c;今天分享的是FCN图像语义分割。 全卷积网络&#xff08;Fully Convolutional Networks&#xff0c;FCN&#xff09;是UC Berkeley的Jonathan Long等人于2015年在Fully Convolutional Networks for Semantic Segmentation一文中提出的用于图…

培养前端工程化思维,不要让一行代码毁了整个程序

看《阿丽亚娜 5 号&#xff08;Ariane 5&#xff09;火箭爆炸》有感。 1、动手写项目之前&#xff0c;先进行全局性代码逻辑思考&#xff0c;将该做的事情&#xff0c;一些细节&#xff0c;统一建立标准&#xff0c;避免为以后埋雷。 2、避免使用不必要或无意义的代码、注释。…

极简Springboot+Mybatis-Plus+Vue零基础萌新都看得懂的分页查询(富含前后端项目案例)

目录 springboot配置相关 依赖配置 yaml配置 MySQL创建与使用 &#xff08;可拿软件包项目系统&#xff09; 创建数据库 创建数据表 mybatis-plus相关 Mapper配置 ​编辑 启动类放MapperScan 启动类中配置 添加config配置文件 Springboot编码 实体类 mapperc(Dao…

【第一篇章】初识XGBoost 揭开神秘面纱

XGBoost发展历程 XGBoost显著优势 XGBoost核心概念 XGBoost&#xff08;eXtreme Gradient Boosting&#xff09;是一种在机器学习领域广泛使用的集成学习算法&#xff0c;特别是在分类、回归和排序任务中表现出色。其基本原理建立在决策树、梯度提升和损失函数优化等核心概念之…

shell-awk命令详解

目录 一.概述 二.工作原理 三.工作流程 1.运行模式 2.运行流程 四.基本语法 1.命令格式 2.常用变量  五.变量类型 1.内建变量 2.内置变量 3.BEGIN END运算  4.awk高级用法 5.awk if语句 6.BEGIN END循环 一.概述 AWK是一种处理文本文件的语言&#xff0c;是一…

2024世界技能大赛某省选拔赛“网络安全项目”B模块--操作系统取证解析

2024世界技能大赛某省选拔赛“网络安全项目”B模块--操作系统取证解析 任务一、操作系统取证解析:总结:任务一、操作系统取证解析: A 集团某电脑系统被恶意份子攻击并控制,怀疑其执行了破坏操作,窃取了集团内部的敏感信息,现请分析 A 集团提供的系统镜像和内存镜像,找到…

国产大模型的逆袭:技术路径的策略与实践

〔探索AI的无限可能&#xff0c;微信关注“AIGCmagic”公众号&#xff0c;让AIGC科技点亮生活〕 一.聚焦长文本&#xff0c;国产大模型已有赶超GPT之势 1.1 理科能力差距较大&#xff0c;注重文科能力的提升 整体比较而言&#xff0c;国内大模型与GPT-4&#xff08;官网&…

树与二叉树【数据结构】

前言 之前我们已经学习过了各种线性的数据结构&#xff0c;顺序表、链表、栈、队列&#xff0c;现在我们一起来了解一下一种非线性的结构----树 1.树的结构和概念 1.1树的概念 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一…

【计算机网络】ICMP报文实验

一&#xff1a;实验目的 1&#xff1a;掌握ICMP报文的各种类型及其代码。 2&#xff1a;掌握ICMP报文的格式。 3&#xff1a;深入理解TTL的含义&#xff08;Time to Live&#xff0c;生存时间&#xff09;。 二&#xff1a;实验仪器设备及软件 硬件&#xff1a;RCMS-C服务器…

等级保护测评解决方案

什么是等级保护测评&#xff1f; 网络安全等级保护是指对国家重要信息、法人和其他组织及公民的专有信息以及公开信息和存储、传输、处理这些信息的信息系统分等级实行安全保护&#xff0c;对信息系统中使用的信息安全产品实行按等级管理&#xff0c;对信息系统中发生的信息安全…

小模型狂飙!6家巨头争相发布小模型,Andrej Karpathy:大语言模型的尺寸竞争正在倒退...

过去一周&#xff0c;可谓是小模型战场最疯狂的一周&#xff0c;商业巨头改变赛道&#xff0c;向大模型say byebye~。 OpenAI、Apple、Mistral等“百花齐放”&#xff0c;纷纷带着自家性能优越的轻量化小模型入场。 小模型(SLM)&#xff0c;是相对于大语言模型&#xff08;LLM…