【发布时间】:2021-02-20 14:48:35
【问题描述】:
我正在开发一个 python 程序。我想在 cmd 上运行命令并将结果返回到程序中,而不通知用户,也没有打开 cmd 窗口。所以整个进度应该在后台,输出必须打印在我自己的程序界面中。我找到了OS模块,它满足我的两个需求吗?如果是,如何? 谢谢。
【问题讨论】:
标签: python python-3.x cmd background
我正在开发一个 python 程序。我想在 cmd 上运行命令并将结果返回到程序中,而不通知用户,也没有打开 cmd 窗口。所以整个进度应该在后台,输出必须打印在我自己的程序界面中。我找到了OS模块,它满足我的两个需求吗?如果是,如何? 谢谢。
【问题讨论】:
标签: python python-3.x cmd background
您可以使用线程在后台执行操作。在 python 中,一种方法是通过 threading 模块。
from threading import Thread
import time
def do_stuff():
time.sleep(5)
print("tasks being done in the backgroud")
print("Outputting Result to user")
print("Program Begin")
t1 = Thread(target=do_stuff)
t1.start()
while(True):
print("Program doing other stuff")
time.sleep(1)
if t1.is_alive() == False:
break
这里我们有一个函数 do_stuff() 可以做一些事情。现在,借助线程,我们可以在后台运行它,同时做其他事情。
【讨论】: