如何使用PythonDocx增加word文档中的段落对象?

如何使用PythonDocx增加word文档中的段落对象?,python,python-docx,Python,Python Docx,我正在搜索word文档,以获取文档中所写内容的描述。但是,这些文档的格式并不完全相同。但有一点是一致的,那就是我想要的文本块总是在标题“Description”之后。所以我会搜索“Description”,然后希望得到后面下一段对象的文本。我如何增加段落对象(可以这么说) 如果你想通过这种方式提取文本并进行搜索,这将减少你的麻烦。它是根据python docx改编的。一个简单的方法是: paragraphs = list(doc.paragraphs) for i in range(len(p

我正在搜索word文档,以获取文档中所写内容的描述。但是,这些文档的格式并不完全相同。但有一点是一致的,那就是我想要的文本块总是在标题“Description”之后。所以我会搜索“Description”,然后希望得到后面下一段对象的文本。我如何增加段落对象(可以这么说)


如果你想通过这种方式提取文本并进行搜索,这将减少你的麻烦。它是根据python docx改编的。

一个简单的方法是:

paragraphs = list(doc.paragraphs)

for i in range(len(paragraphs)):
    paragraph = paragraphs[i]
    if 'Description' in paragraph.text:
        print(paragraphs[i+1].text)

如果您确实知道描述标签出现在标题1样式为
的段落中,您可以进一步限定标题段落,这样您就不会在恰好使用该词的段落中得到误报。

啊,这一行告诉我
打印(段落[i+1].text)
段落对象不支持索引,当它在其他地方应用时,显然是@scannySorry@Vince,这应该是
打印(段落[i+1].text)
,对打字错误表示歉意。我已经在示例中修复了它。段落对象不支持索引访问,这是有意义的,因为它不是集合。但是,从Document.parages返回的值已经是一个列表,它当然支持索引,因此您可以将第一行简化为
段落=doc.parages
。如果您谈论的是类似段落的某种行为。下一步,类似于段落支持相对于自身的索引访问,则不,这种能力并不存在。
paragraphs = list(doc.paragraphs)

for i in range(len(paragraphs)):
    paragraph = paragraphs[i]
    if 'Description' in paragraph.text:
        print(paragraphs[i+1].text)