我正在使用python-docx并尝试替换表格保存样式中的文本。 that's how my table looks
我已经设法使用此替换段落:
from docx import Document
def replace_string(doc, to_replace, replacement):
for p in doc.paragraphs:
if to_replace in p.text:
inline = p.runs
for i in range(len(inline)):
if to_replace in inline[i].text:
text = inline[i].text.replace(to_replace, replacement)
inline[i].text = text
return 1
但它不适用于表格和单元格。我也试过这个:
def replace_in_table(doc, to_replace, replacement):
for table in doc.tables:
for cell in table.cells:
for p in cell.paragaphs:
if to_replace in p.text:
inline = p.runs
for i in range(len(inline)):
if to_replace in inline[i].text:
text = inline[i].text.replace(to_replace, replacement)
inline[i].text = text
return 1
但我有一个AttributeError:'Table'对象没有属性'cells'。 请帮我解决这个问题
答案 0 :(得分:2)
看着他们的docs你可能需要做这样的事情:
for table in doc.tables:
for row in table.rows:
for cell in row.cells:
...