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

一、前言

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

二、Word题库转Excel

1、Word题库格式要求

题目每7行循环,要求如下:

行数 内容 分隔符
第一行 题目
第二行 选项A "."(英文符号点)
第三行 选项B "."(英文符号点)
第四行 选项C "."(英文符号点)
第五行 选项D "."(英文符号点)
第六行 答案 ":"(英文符号冒号)
第七行 换行符分割

2、Word题库内容展示

3、Python转换代码

python 复制代码
# -*- coding: cp936 -*-

import docx
import openpyxl

doc_path = input("输入Word文件路径:")
wb_path = input("输入Excel文件路径:")

try:
    # 读取Word文档
    doc = docx.Document(doc_path)

    # 创建一个Excel工作簿
    wb = openpyxl.Workbook()
    ws = wb.active
    ws.title = "题目及答案"

    # 写入表头
    ws["A1"] = "题目"
    ws["B1"] = "答案"
    row_num = 2

    for i in range(0, len(doc.paragraphs), 7):
        print(f"正在读取:{doc.paragraphs[i].text}")
        question = doc.paragraphs[i].text
        option_A = doc.paragraphs[i+1].text.split(".")[1].strip()
        option_B = doc.paragraphs[i+2].text.split(".")[1].strip()
        option_C = doc.paragraphs[i+3].text.split(".")[1].strip()
        option_D = doc.paragraphs[i+4].text.split(".")[1].strip()
        answer_index = doc.paragraphs[i+5].text.split(":")[1].strip()
        
        options_dict = {
            "A": option_A,
            "B": option_B,
            "C": option_C,
            "D": option_D
        }
        
        # 获取答案对应的值,若找不到则使用"Unknown"
        answer = options_dict.get(answer_index, "Unknown")  

        # 写入Excel
        ws[f"A{row_num}"] = question
        ws[f"B{row_num}"] = answer
        row_num += 1

    # 保存Excel文件
    wb.save(wb_path)
    print("转换完成:题目和答案已成功写入Excel文件。")

except Exception as e:
    print(f"发生错误:{e}")

input("按任意键退出...")

4、Python打包程序下载

下载链接。

5、错误原因说明及解决方法

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

情况一:题目存在多余换行符,如下。

情况二:答案缺失换行符,如下。

情况三:缺失部分题目、答案选项、答案结果,如下。

三、关键字快速查询题库

1、Excel题库格式要求

列数 内容
A列 题目
B列 正确答案

2、Excel题库内容展示

3、软件下载

下载链接。

4、软件使用

①启动软件,并打开题库

②查询方式

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

③查询结果仅为1题时,效果展示

④查询结果为多题时,效果展示(在软件左侧上部分点击选择或输入更多关键字查询)

⑤查询结果为空时,效果展示

⑥查询题目重复,效果展示

四、补充说明

1、"Word题库转Excel"开发环境:Python 3.9;

2、"查询Excell"开发环境:.NET8;

3、软件仅适配了单选题;

4、软件支持题目重复;

5、若考核网页(软件)不支持题目复制,尝试使用浏览器插件解除复制或使用ocr软件辅助。

相关推荐
阿正的梦工坊1 小时前
深入理解 PyTorch 中的 unsqueeze 操作
人工智能·pytorch·python
FreakStudio2 小时前
硬件版【Cursor】?aily blockly IDE尝鲜封神,实战硬伤尽显
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
测试员周周3 小时前
【Appium 系列】第06节-页面对象实现 — LoginPage 实战
开发语言·前端·人工智能·python·功能测试·appium·测试用例
2301_783848654 小时前
优化文本分类中堆叠模型的网格搜索性能:避免训练卡顿的实战指南
jvm·数据库·python
CLX05055 小时前
如何安装Oracle 12c Cloud Control_OMS服务端组件与Agent部署
jvm·数据库·python
老纪6 小时前
SQL中如何查找特定的空值行:WHERE IS NULL深度解析
jvm·数据库·python
噜噜噜阿鲁~6 小时前
python学习笔记 | 10.0、面向对象编程
笔记·python·学习
weixin199701080166 小时前
[特殊字符] RESTful API 接口规范详解:构建高效、可扩展的 Web 服务(附 Python 源码)
前端·python·restful
2301_781571426 小时前
mysql数据库响应缓慢如何排查_使用EXPLAIN分析执行计划
jvm·数据库·python
彳亍1016 小时前
实现倒计时数字在到达1后自动隐藏(2为最后可见数字),同时继续运行至-1再终止
jvm·数据库·python