pythonchatgpt插件有什么用 (怎么用chat gpt写python代码)

第一步:

直接明了的提出你的要求:

chatgpt如何进行代码优化python,怎么用python写自己的chatgpt

from docx import Document

# 用于合并的多个Word文档的文件名列表
doc_files = ['file1.docx', 'file2.docx', 'file3.docx']

# 创建新的Word文档
merged_doc = Document()

# 循环读取每个Word文档,并将其内容添加到合并后的文档中
for file in doc_files:
    doc = Document(file)
    for para in doc.paragraphs:
        merged_doc.add_paragraph(para.text)
    for table in doc.tables:
        merged_doc.add_table(table)

# 将合并后的文档保存到文件中
merged_doc.save('merged.docx')

以上代码首先创建一个新的Word文档对象merged_doc,然后循环读取每个要合并的Word文档,将其段落和表格添加到merged_doc文档对象中。最后,将合并后的文档保存到新的文件merged.docx中。

第二步:debug

不出意料,报错了:

chatgpt如何进行代码优化python,怎么用python写自己的chatgpt

其实回答不够准确,但给出了方向提示。深究下去其实是docx库版本太低,但无法通过pip upgrade升级,不过GPT也耐心的给出了方法:

chatgpt如何进行代码优化python,怎么用python写自己的chatgpt

本质原因是docx旧版本叫docx,新版本叫python-docx,安装后这个问题就过了。

第三步:调教GPT

merged_doc.add_table(table)报错

TypeError: add_table() missing 1 required positional argument: 'cols'

chatgpt如何进行代码优化python,怎么用python写自己的chatgpt

chatgpt如何进行代码优化python,怎么用python写自己的chatgpt

chatgpt如何进行代码优化python,怎么用python写自己的chatgpt

chatgpt如何进行代码优化python,怎么用python写自己的chatgpt

修改后的代码

from docx import Document
from docx.shared import Inches

doc_files = ['file1.docx', 'file2.docx', 'file3.docx']
merged_doc = Document()

for file in doc_files:
    file = 'C:/Users/link.USR/PycharmProjects/keypress/venv/tcl/pdf2combine/' + file
    doc = Document(file)

    # Add a paragraph break between documents
    merged_doc.add_paragraph()

    # Copy each paragraph from the source document
    for para in doc.paragraphs:
        merged_doc.add_paragraph(para.text)

    # Copy each table from the source document
    for table in doc.tables:
        rows = len(table.rows)
        cols = len(table.columns)
        merged_table = merged_doc.add_table(rows=rows, cols=cols)
        for i, row in enumerate(table.rows):
            for j, cell in enumerate(row.cells):
                merged_table.cell(i, j).text = cell.text
                merged_table.cell(i, j).width = cell.width

merged_doc.save('merged.docx')


可以看到GPT成长了,改进了之前我提出的错误,不过该代码只能合并文字和表格,不能合并图片,还需要继续改进。