【发布时间】:2011-03-31 18:27:24
【问题描述】:
我想运行一个进程,而不是等待它返回。我已经尝试使用 P_NOWAIT 和子进程进行生成,如下所示:
app = "C:\Windows\Notepad.exe"
file = "C:\Path\To\File.txt"
pid = subprocess.Popen(
[app, file],
shell=True,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
).pid
但是,在我关闭记事本之前,控制台窗口仍然存在。是否可以启动该过程而不等待它完成?
【问题讨论】:
-
你使用的是
python.exe还是pythonw.exe? -
显然 python 足够聪明,可以意识到那些反斜杠不是转义字符,但是,我会通过使用
r'C:\path'甚至更好的'C:/path'来避免这样做 -
@NickT 或者只是单引号而不是双引号
-
@aking1012 单引号和双引号字符串的解析方式不同?不知道
-
@aking1012:你是; Python 不会区别对待单引号和双引号。
标签: python windows subprocess