import win32com.client ppt = win32com.client.Dispatch("PowerPoint.Application") ppt.Visible = True presentation = ppt.Presentations.Open(r"C:\Work\PPTCombined\first.pptx") for f in [r"C:\Work\PPTCombined\second.pptx", r"C:\Work\PPTCombined\third.pptx"]: presentation.Slides.InsertFromFile(f, presentation.Slides.Count) presentation.SaveAs(r"C:\Work\PPTCombined\merged.pptx") ppt.Quit()