(python-pptx) 如何创建幻灯片,其中每张幻灯片的标题都是列表中的字符串?

(python-pptx) How do I create slides where the title of each slide is a string from a list?

例如,我有这个列表:

titles =  ['A', 'B', 'C'] 

现在我希望每个标题都是每张幻灯片的标题 所以幻灯片 1 = A,幻灯片 2 = B 和幻灯片 3 = C.

你会怎么做?

official quickstart guide 的基础上,您可以按照以下方式创建演示文稿,并为列表中的每个标题添加一张幻灯片并从列表中设置其标题:

from pptx import Presentation

prs = Presentation()
title_slide_layout = prs.slide_layouts[0]

titles = ['A', 'B', 'C']
for slidetitle in titles:
    slide = prs.slides.add_slide(title_slide_layout)
    slide.shapes.title.text = slidetitle

prs.save('test.pptx')

或者,如果您想编辑现有的 Powerpoint 演示文稿,可以按如下方式更新幻灯片标题:

from pptx import Presentation

prs = Presentation('test.pptx')

text_runs = []
titles = ['A', 'B', 'B']
for i,slide in enumerate(prs.slides):
    slide.shapes.title.text = titles[i]
    print(slide.shapes.title.text)

prs.save('test.pptx')