Python docx:在 table 之后插入段落
Python docx: Inserting paragraph after a table
如果我们有一个带有 table 的已保存 docx,我们想 在 table 之后插入一个段落,我们该怎么做?
我知道使用
可以很容易地找到表格
for table in document.tables:
...
python-docx: Inserting a paragraph before a table 有在 和 table 之前插入段落 的解决方案。如何实现类似的解决方案以在 after a table.
中插入段落
不幸的是,python-docx 的内部工作原理对于我来说是个编程新手,理解起来很复杂。
非常感谢任何帮助。
这应该可以解决您的问题:
from docx.text.paragraph import Paragraph
def table_insert_paragraph_after(table):
"""Return new `Paragraph` object inserted directly after `table`.
`table` must already be immediately followed by a paragraph. So
This won't work for a table followed by another table or a table
at the end of the document.
"""
p = table._tbl.getnext()
paragraph = Paragraph(p, table._parent)
return paragraph.insert_paragraph_before()
paragraph = table_insert_paragraph_after(table)
如果我们有一个带有 table 的已保存 docx,我们想 在 table 之后插入一个段落,我们该怎么做?
我知道使用
可以很容易地找到表格for table in document.tables:
...
python-docx: Inserting a paragraph before a table 有在 和 table 之前插入段落 的解决方案。如何实现类似的解决方案以在 after a table.
中插入段落不幸的是,python-docx 的内部工作原理对于我来说是个编程新手,理解起来很复杂。
非常感谢任何帮助。
这应该可以解决您的问题:
from docx.text.paragraph import Paragraph
def table_insert_paragraph_after(table):
"""Return new `Paragraph` object inserted directly after `table`.
`table` must already be immediately followed by a paragraph. So
This won't work for a table followed by another table or a table
at the end of the document.
"""
p = table._tbl.getnext()
paragraph = Paragraph(p, table._parent)
return paragraph.insert_paragraph_before()
paragraph = table_insert_paragraph_after(table)