做完某事后关闭终端 window

Close the terminal window after doing something

我只想打印一些信息并调用应用程序,例如记事本。

from subprocess import call
print("Opening Notepad++")
call([r"C:\Program Files (x86)\Notepad++\notepad++.exe"])
exit()

现在的问题是终端 window 没有自动关闭。它会一直打开,直到我关闭记事本 window。如何让终端 window 自动消失。

像这样使用Popen

import subprocess

subprocess.Popen(r'C:\Program Files (x86)\Notepad++\notepad++.exe', \
                 stdout=subprocess.PIPE, shell=False, creationflags = 0x08000000)

您可以使用 pythonw.exe: pythonw script.py

或将其扩展名更改为 pyw,例如script.pyw 并双击它。

如果这样做,您应该将 "Opening Notepad++" 打印到弹出窗口 window。参见:

您需要使用 start COMMAND 调用记事本命令,就像在 Linux 中我们使用 COMMAND & 将进程分叉到后台。在 windows 中,我们使用 start COMMAND

所以你重构了代码:

from subprocess import call
print("Opening Notepad++")
call([r"start C:\Program Files (x86)\Notepad++\notepad++.exe"])
exit()

尽管注意我没有 windows 机器来测试。