做完某事后关闭终端 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 机器来测试。
我只想打印一些信息并调用应用程序,例如记事本。
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 机器来测试。