python打印出word段落的常用属性

发布于:2025-04-02 ⋅ 阅读:(36) ⋅ 点赞:(0)

python-docx 中,Paragraph 对象有多个属性,可以帮助你了解段落的格式和内容。下面是一个示例代码,它打印出每个段落的常用属性:

from docx import Document

def print_paragraph_attributes(file_path):
    doc = Document(file_path)
    for para in doc.paragraphs:
        print(f"Text: {para.text}")
        print(f"Style: {para.style.name}")
        print(f"Alignment: {para.alignment}")
        print(f"First line indent: {para.paragraph_format.first_line_indent}")
        print(f"Left indent: {para.paragraph_format.left_indent}")
        print(f"Right indent: {para.paragraph_format.right_indent}")
        print(f"Space before: {para.paragraph_format.space_before}")
        print(f"Space after: {para.paragraph_format.space_after}")
        print(f"Widow control: {para.paragraph_format.widow_control}")
        print(f"Keep together: {para.paragraph_format.keep_together}")
        print(f"Keep with next: {para.paragraph_format.keep_with_next}")
        print(f"Page break before: {para.paragraph_format.page_break_before}")
        print("-" * 40)

# 替换 'your_doc.docx' 为你的文档路径
print_paragraph_attributes('your_doc.docx')

解释

  • text: 段落的文本内容。

  • style.name: 段落的样式名称。这可以帮助你识别段落是否属于某个特定的样式(如标题、正文、列表等)。

  • alignment: 段落的对齐方式。可能的值包括 LEFT, CENTER, RIGHT, JUSTIFY 等。

  • paragraph_format.first_line_indent: 段落的首行缩进量。

  • paragraph_format.left_indent: 段落的左侧缩进量。

  • paragraph_format.right_indent: 段落的右侧缩进量。

  • paragraph_format.space_before: 段落前的间距。

  • paragraph_format.space_after: 段落后的间距。

  • paragraph_format.widow_control: 孤行控制设置。

  • paragraph_format.keep_together: 保持段落在一起设置。

  • paragraph_format.keep_with_next: 与下一段保持在一起设置。

  • paragraph_format.page_break_before: 在段落前插入分页符设置。

这些属性可以帮助你深入了解段落的格式和布局,从而更准确地识别和处理自动编号、缩进、对齐等格式特性。根据你的具体需求,你可以利用这些属性来进行更复杂的文档分析和处理。