从Python打开另一个文件并终止脚本

时间:2011-09-23 03:35:53

标签: python file io operating-system

我正在努力找出实现这一目标的最佳解决方案。基本上,我想从Python打开另一个程序(无所谓,可能是图像,可执行文件等)。我已经尝试过os.system和subprocess.call但是两者都不会在之后终止脚本,而是等待返回。我看过os.execl,它似乎接近我需要的东西,但我不确定我是否理解arg,因为我总是得到exec格式错误和无效的参数。我甚至不确定这是否适合我需要的功能。任何帮助将不胜感激。

我尝试过使用subprocess.call和subprocess.Popen,使用类似的东西:

import subprocess
subprocess.Popen("B:\test.txt")

并最终出现以下错误:

WindowsError: [Error 5] Access is denied.

2 个答案:

答案 0 :(得分:1)

使用subprocess.Popen [docs]

不要在结果对象上调用communicate

答案 1 :(得分:1)

os.execlp("start", r"B:\test.txt")

(那是针对Windows的。在运行X11的Unix系统上,你会这样做:)

os.execlp("xdg-open", r"B:\test.txt")