无法使用docx python在word文档中应用表格样式

无法使用docx python在word文档中应用表格样式,python,docx,Python,Docx,我无法使用python 3.4将自定义表格样式应用于WORD文档。我遵循@scanny的一个很好的方法:我创建了一个空白WORD文档,创建了一个自定义表格样式,并将其保存为“或”。我创建了一个新表,并对其应用了自定义表样式。然后,我删除了表并将文档保存为“template.docx”。然后,我应用了如下样式: document = Document("C:/pytest/template.docx") table = document.add_table(rows=1, cols=3) tabl

我无法使用python 3.4将自定义表格样式应用于WORD文档。我遵循@scanny的一个很好的方法:我创建了一个空白WORD文档,创建了一个自定义表格样式,并将其保存为“或”。我创建了一个新表,并对其应用了自定义表样式。然后,我删除了表并将文档保存为“template.docx”。然后,我应用了如下样式:

document = Document("C:/pytest/template.docx")
table = document.add_table(rows=1, cols=3)
table.style = "OR"
hdr_cells = table.rows[0].cells
hdr_cells[0].paragraphs[0].add_run('Date Filmed:').bold = True
hdr_cells[2].paragraphs[0].add_run('Barcode Number:').bold = True
row_cells = table.add_row().cells
row_cells[0].text = date
row_cells[2].text = bcode
当我运行程序时,它会出现一个错误: 文件“C:\Python34\lib\site packages\python\u docx-0.8.5-py3.4.egg\docx\styles\styles.py”,第57行,位于getitem raise KeyError(“没有名为“%s”的样式%key”) KeyError:“没有名为“Title”的样式”

它不是在代码中指定一行,而是一个名为“styles.py”的文件。语法是否有误

谢谢,
Jeff

设置
table.style=“或”
时,需要指定样式对象

因此,要使其发挥作用,您需要做的是
table.style=document.style['OR']


最简洁的方法是在创建表时指定样式,例如:
table=document.add_table(rows=1,cols=3,document.styles['OR'])
旧线程仍然存在问题。问题在于“document”。您的template.docx没有使用“OR”“样式,所以它不保存在那里。相反,请使用通用的空文档,即。
generic\u document=document()
然后在样式中引用它
table.style=generic\u document.style['或']