遍历单元格 sentences/paragraphs - docx 表格

Iterating through cell sentences/paragraphs - docx tables

我希望在 docx table 的单元格内遍历 sentences/paragraphs,使用 pywin32 模块根据样式标签执行功能。

我可以手动 select 单元格使用 cell = table.Cell(Row = 1, Column =2)

我尝试使用类似

for x in cell:
#do something

但是 <class 'win32com.client.CDispatch'> 个对象 'do not support enumeration'

我尝试浏览:Word OM 以找到解决方案但无济于事(我知道这是针对 VBA,但仍然非常有用)

这是一个简单的例子,它从文档中第一个 table 的第一行/第一列读取内容并逐字打印:

import win32com.client as win32
import os

wordApp = win32.gencache.EnsureDispatch("Word.Application")
wordApp.Visible = False
doc = wordApp.Documents.Open(os.getcwd() + "\Test.docx")
table = doc.Tables(1)
for word in table.Cell(Row = 1, Column = 1).Range.Text.split():
    print(word)
wordApp.Application.Quit(-1)

单元格的内容只是一个字符串,您也可以使用 split('\r') 轻松地将其拆分为段落或使用 split('.') 拆分为句子。