如何在python-docx中同时应用粗体和斜体?

mig*_*car 2 python docx python-docx

我正在写一本字典.我正在使用python-docx将其放入MS Word中.我可以很容易地使它变得粗体或斜体,但似乎无法弄清楚如何做到这两点.这是基础知识:

import docx

word = 'Dictionary'

doc = docx.Document()
p = doc.add_paragraph()
p.add_run(word).bold = True

doc.save('test.docx')
Run Code Online (Sandbox Code Playgroud)

我试过p.add_run(word).bold.italic = True,但收到'NoneType'错误,我明白了.

我也在add_run之前和之后尝试了p.bold = True和p.italic = True,但是一起丢失了格式.

Word的查找/替换是一个简单的解决方案,但如果可以,我宁愿在代码中执行此操作.

Won*_*ket 7

add_run方法将在Run每次调用时返回一个新实例.您需要创建一个实例,然后应用italicbold

import docx

word = 'Dictionary'

doc = docx.Document()
p = doc.add_paragraph()

runner = p.add_run(word)
runner.bold = True
runner.italic = True

doc.save('test.docx')
Run Code Online (Sandbox Code Playgroud)