日常随笔——如何把excel题库转换为word打印格式

将Excel题库转换为Word可以通过编程的方式实现。以下是一个使用Python的示例代码,该代码使用openpyxl库读取Excel文件,并使用python-docx库创建和保存Word文档。

首先,请确保已经安装了 openpyxl 和 python-docx 库。可以使用以下命令进行安装:

python 复制代码
pip install openpyxl python-docx

然后,使用以下代码将Excel题库转换为Word文档:

python 复制代码
import openpyxl
from docx import Document
from docx.shared import Pt

def excel_to_word(excel_file, word_file):
    # 打开Excel文件
    wb = openpyxl.load_workbook(excel_file)
    
    # 获取第一个工作表
    sheet = wb.active
    count = 1
    # 创建Word文档
    doc = Document()
    first_line = True
    # 遍历Excel表格中的每一行
    for row in sheet.iter_rows(values_only=True):
		# 跳过首行
        if first_line:
            first_line = False
            continue
        # 第一列为问题,第二列为答案
        question = row[0]
        answer_mode = row[1]
        answer_choice = row[3]
        answer = row[4]

        answer_choices = answer_choice.split("|")
        if len(answer_choices) == 1:
            answer_choices = answer_choice.split("|")
        choice  = ""
        C = ["A", "B", "C", "D", "E", "F", "G"]
        
        for index, value in enumerate(answer_choices):
            choice += C[index] + ": " + str(value) + "   "
        
        # 调整间距
        # doc.paragraph_format.space_before = Pt(12)  # 段前12磅
        # doc.paragraph_format.space_after = Pt(12)   # 段后12磅
        # 将问题和答案写入Word文档
        doc.add_paragraph(f"问题{count}: {question}({answer_mode}) \n选项: {choice} \n答案: {answer}")
        # doc.add_paragraph(f"选项: {choice}")
        # doc.add_paragraph(f"答案: {answer}")
        
        # 添加分隔线
        # doc.add_paragraph("--------------------")
        count += 1
    
    # 保存Word文档
    doc.save(word_file)

# 设置Excel和Word文件的路径
excel_file = "复习资料.xlsx"
word_file = "题库.docx"

# 调用函数将Excel题库转换为Word文档
excel_to_word(excel_file, word_file)
相关推荐
X566139 分钟前
如何在 Laravel 中正确保存嵌套动态表单数据(主服务与子服务)
jvm·数据库·python
ZhengEnCi1 小时前
03ab-PyTorch安装教程 📚
python
狐狐生风2 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
狐狐生风2 小时前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
老前端的功夫2 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
yaoxin5211233 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
dFObBIMmai3 小时前
MySQL主从同步中大事务导致的延迟_如何拆分大事务优化同步
jvm·数据库·python
szccyw03 小时前
mysql如何限制特定存储过程执行权限_MySQL存储过程安全访问
jvm·数据库·python
小白学大数据3 小时前
Python 自动化爬取网易云音乐歌手歌词实战教程
爬虫·python·okhttp·自动化
yngsqq4 小时前
平面图环 内轮廓
c#