使用 psutil 杀死每个 python 进程名称,除了一个

Kill every python process name with psutil except one

我正在使用以下 python 脚本来终止具有给定名称的每个进程:

import psutil

for proc in psutil.process_iter():
    if proc.name() == "processname":
        proc.kill()

我希望脚本让给定名称的进程保持打开状态。我怎样才能做到这一点?可以用这个方法吗?

您应该直接跳过第一个:

piter = psutil.process_iter()
first = True
for proc in psutil.process_iter():
    if proc.name() == "processname":
        if First:
            First = False
        else:
            proc.kill()

这是另一个可行的解决方案:

[func() for func in [proc.kill for proc in psutil.process_iter() if proc.name()=="processname"][1:]]