文章目录

前言

一、pandas是什么?

二、使用步骤

1.引入库

2.读入数据

总结


前言

在工作中不时遇到新的需求,需要用到新的类库,以此篇专门记录Python类库使用过程中遇到的问题与解决


一、Python是什么?

Python是一种高级编程语言,具有简单易学和可读性强的特点。它被广泛应用于多个领域,包括数据分析、人工智能、科学计算、网站开发等。Python语言的设计目标是简洁而易于理解,它强调用简洁的代码实现复杂的功能。同时,Python具有丰富的库和模块,可以方便地进行各种操作和任务。

二、类库使用记录

1.生成Word文档

需求

我用大模型出了几道题,让大模型按照要求进行作答,然后将题目、作答写入到Word中,形成报告

类库

python-docx

代码

生成word文档

def fillDoc(title: str, save_file_path: str, contentList: list):
    # 创建一个新的Word文档对象
    doc = Document()
    # set_style(doc=doc)

    # 添加标题
    doc.add_heading(title, level=0)

    for item in contentList:
        title = item["title"]
        content = item["content"]
        # 添加带有编号的列表
        doc.add_paragraph(title, style="ListNumber")
        # 添加段落
        doc.add_paragraph(content)

    # 保存文档
    doc.save(save_file_path)

设置字体样式

def set_default_font_to_songti(**kwargs):
    """
    doc
    paragraph
    """
    doc: DOC = kwargs.get("doc")
    paragraph: Paragraph = kwargs.get("paragraph")

    if doc != None:
        ps = doc.paragraphs
        for p in ps:
            set_default_font_to_songti(paragraph=p)

    elif paragraph != None:

        runs = paragraph.runs
        for run in runs:
            run.font.name = '宋体'

问题

虽然我设置了宋体,但是不起作用,打开生成的文档,字体还是windows啥的

解决

问了AI不好使,然后网络各种搜索、尝试,终于找到一个靠谱的

如上代码修改为如下即可,按照这个代码理解,默认的font.name是设置西文字体,中文字体设置是另一个属性控制的

run.font.name = 'Times New Roman' # 设置西文字体

run._element.rPr.rFonts.set(qn('w:eastAsia'), '宋体')  # 设置中文字体

参考

解决python-docx设置字体为宋体无效_python-docx 字体设置失败-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/anjingshen/article/details/142203848

2.读取Excel内容

Excel读取为json格式

def read4Excel(excel_file_path):
    df=pd.read_excel(excel_file_path)

    # 按记录生成
    dataObj=df.to_dict(orient='records')

    return dataObj

增加参数设置orient='records'即可,默认是按列生成json数据格式。


总结

以上就是今天要讲的内容,主要涉及了Word文档的生成与Excel内容的读取,希望能帮到各种新入门的小伙伴。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐