在Windows 7中用默认程序打开PDF
我有一个程序,它的帮助文档是一个.pdf文件,和.py模块放在同一个文件夹里。我希望程序能用系统默认的PDF阅读器打开这个.pdf文件。
我在程序中使用了以下代码:
if sys.platform.startswith('darwin'):
os.system("SlannanHelp.pdf")
elif sys.platform.startswith('linux'):
os.system("SlannanHelp.pdf")
elif sys.platform.startswith('win32'):
os.filestart("SlannanHelp.pdf")
但是,当我在Windows 7上运行这个代码时,出现了以下错误:
追踪记录(最近的调用在最前面): 文件 "C:\Users\user\MousePaw Games\MousePaw Labs\Slannan\Slannan.py",第1286行,在 help_event os.filestart("SlannanHelp.pdf") 属性错误:'模块'对象没有属性 'filestart'
我猜测os.filestart这个命令在NT系统上可以用,但在Windows 7上不行。有没有一个命令可以在这两种系统上都能用,或者一个只适用于Windows 7的命令?如果是后者,我该如何检查用户是运行NT版本还是7版本的Windows呢?
提前谢谢你!
1 个回答
7
问题是 os.filestart
根本不存在。
你可能想用的是 os.startfile
你还可以看看以下内容:
在Python中用默认应用打开文档
和 如何用标准应用打开文件? 这些内容推荐在Mac上使用 system('open', filepath)
,在Linux上使用 system('xdg-open', filepath)