如何在Python脚本中从命令行打开一个窗口?

时间:2013-06-13 16:59:54

标签: python command-line window os.system

我正在研究一个用于分析天文图像的python脚本,我正在尝试在python脚本中打开一个DS9窗口(DS9是一个允许交互式查看和分析图像的实用程序)。通常我会打开DS9进入Linux终端并输入:

>ds9 &

然后会弹出另一个窗口。

我尝试通过编写以下行来在我的python脚本中模仿它:

os.system('ds9 &')

当我运行脚本时,会弹出DS9窗口,但在我关闭DS9窗口之前,其余的脚本都不会运行。这给了我错误,因为后面的任务需要打开DS9窗口。

我想知道是否有办法在python脚本中打开一个窗口,并且仍然让其余的脚本继续运行。

也许:

os.system('ds9 &')

不是正确的方法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用subprocess模块  subprocess是一种更新的方法来生成流程,而不是使用os.spawn*()os.system()

在你的情况下:

import subprocess
subprocess.Popen(["ds9"])

这应该在后台运行 ds9

请参阅文档here