如何在不杀死父进程的情况下杀死所有其他正在运行的python进程
我希望停止所有python进程,而不终止当前正在运行的脚本。这是我到目前为止写的代码如何在不杀死父进程的情况下杀死所有其他正在运行的python进程,python,python-3.x,Python,Python 3.x,我希望停止所有python进程,而不终止当前正在运行的脚本。这是我到目前为止写的代码 import psutil import os for proc in psutil.process_iter(): pinfo = proc.as_dict(attrs=['pid', 'name']) procname = str(pinfo['name']) procpid = str(pinfo['pid']) if "python" in procname:
import psutil
import os
for proc in psutil.process_iter():
pinfo = proc.as_dict(attrs=['pid', 'name'])
procname = str(pinfo['name'])
procpid = str(pinfo['pid'])
if "python" in procname:
print("Stopped Python Process ", proc)
proc.kill()
如果,从当前状态更改您的
if "python" in procname:
到
您需要获得程序具有的pid。并检查您迭代的所有元素是否具有相同的pid
import psutil
import os
this_proc = os.getpid()
for proc in psutil.process_iter():
procd = proc.as_dict(attrs=['pid', 'name'])
if "python" in str(procd['name']) and procd['pid'] != this_proc:
proc.kill()
@ChuckBoyd,接受答案是一种很好的做法,而不仅仅是表示感谢:-)
import psutil
import os
this_proc = os.getpid()
for proc in psutil.process_iter():
procd = proc.as_dict(attrs=['pid', 'name'])
if "python" in str(procd['name']) and procd['pid'] != this_proc:
proc.kill()