使用Python打开Word文档

Woo*_*per 8 python docx python-3.x

我试图在Python中自动打开Word文档.我对编程非常陌生,我听说这个网站帮助那些遇到麻烦的人.

我看过各种问题,发现了这个:

DummyFile = path_to_docx
with open(DummyFile) as f:
    source_stream = io(f.read())
document = doc(source_stream)
source_stream.close()
Run Code Online (Sandbox Code Playgroud)

但是当我运行它时,我得到:

 UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 74: character maps to <undefined>
Run Code Online (Sandbox Code Playgroud)

看来这段代码不是我想要的.我相信它正在尝试阅读我的文档并将其放入变量中.不是我想要的.我想要的命令,执行时,将打开Microsoft Word中的word文档

预期结果:

Word文档在Microsoft Word中打开,如下所示:

这里

Rob*_*utt 6

您在问题中发布的代码是将Word文件作为可以使用的对象读取到Python代码中,而不是启动Word应用程序.

您需要做的是滥用Windows的OS启动命令,这将在Windows shell具有该扩展注册的任何应用程序中启动给定文件,例如......

os.system('start mywordfile.docx')
Run Code Online (Sandbox Code Playgroud)

我没有安装Word,但我尝试使用PNG图像文件...

os.system('start mydiagram.png')
Run Code Online (Sandbox Code Playgroud)

它在Windows 10上的照片应用程序中打开就好了.

  • 您可能要考虑到OP在变量中具有文件名。如果有空格,则需要使用引号。 (2认同)

Nin*_*rry 5

在Windows上,您可以使用os.startfile:

import os
os.startfile('C:\\Path\\To\\file.docx')
Run Code Online (Sandbox Code Playgroud)

对于其他操作系统,请参阅以下答案:https: //stackoverflow.com/a/435669/101087