1. 程式人生 > >Python Windows下subprocess立即關閉管道

Python Windows下subprocess立即關閉管道

Windows下帶UI的Python程式,如果其中使用了subprocess.Popen,那麼我們可以設定shell=True來不顯示command視窗,但是這樣的話,使用terminate()就無法立即終止管道;如果想terminate()能達到立即終止的效果,又必須把shell=False,看起來是二選一。沒關係,可以用creationflags來達到兩全:

import subprocess

pipe = subprocess.Popen('ping 127.0.0.1', stdout=subprocess.PIPE, creationflags=0x08)


由於shell=False是預設值,所以未設定。這樣一來,執行時即不顯示command視窗,又可以用terminate()來立即終止管道。