Python - 处理调用和等待

时间:2016-04-08 07:30:53

标签: python python-3.x pyqt5

我有一个关于调用进程的问题,并等到这个程序结束。

它应该像这样工作:

主程序和辅助程序。

主程序应通过单击QPushButton打开辅助程序。

然后出现辅助程序,您可以正常使用它。

在您关闭它的那一刻,(因此进程被杀死,退出窗口)主程序也应该终止。

我知道有“subprocess”模块,但我不明白如何使用它。文档有点紧张。

寻求帮助:)

2 个答案:

答案 0 :(得分:0)

你可以试试这个。

    import subprocess
    subprocess.call('ping 192.168.132.133')

在Python 3.X中,您使用首选的subprocess.run()。 如果你想要更高级的例子,run()不能工作,你可以直接使用popen()。

答案 1 :(得分:0)

如果您不需要保持第一个程序运行,您可以在打开第二个程序后立即关闭它:

    if QtCore.QProcess.startDetached('prog2', ['arg1', 'arg2']):
        QtWidgets.qApp.quit()
    else:
        print('ERROR: could not start prog2')