在Python中使用win32com时的无限循环
我在运行win32com时遇到了无限循环。 代码如下所示,没有错误或msgs,在这方面的任何帮助都是非常感谢的。提前谢谢你在Python中使用win32com时的无限循环,python,Python,我在运行win32com时遇到了无限循环。 代码如下所示,没有错误或msgs,在这方面的任何帮助都是非常感谢的。提前谢谢你 data : [{'filename':'example1.docx'},{'name':'John'},{'filename':'example2.docx'},{'name':'Jan'}] for i in data: name1 = i["[filename]"] name2 = now.strftime("%d%m
data : [{'filename':'example1.docx'},{'name':'John'},{'filename':'example2.docx'},{'name':'Jan'}]
for i in data:
name1 = i["[filename]"]
name2 = now.strftime("%d%m%Y") + '__' + i["[filename]"]
word = win32com.client.gencache.EnsureDispatch("Word.Application")
word.Documents.Open(os.path.abspath(name1))
word.ActiveDocument.SaveAs(os.path.abspath(name2))
word.ActiveDocument.Close(False)
word.Quit()
尝试创建word实例并在循环外部退出它。为每个文档打开/关闭word既没有用处也没有浪费。试一试,然后报告是什么让你认为它一直在运行?另外,
name1=i[“[filename]”]
是一个关键错误。顺便问一下:你想实现什么?复制文件?您可以只使用文件副本而不使用word。@Jean-François Fabre所以…基本上,我有一个excel文件,每行的文本都将替换为匹配docx文件的文字。现在只有第一行可以工作了。@roganjosh我想它一直在运行,因为只有第一个docx文件可以更改和保存,而且我不能给终端任何命令。我必须关闭它,然后重新打开它。