python3怎么判断进程是否存在

python

通过进程名判断

import psutil

 

def judgeprocess(processname):

    pl = psutil.pids()

    for pid in pl:

        if psutil.Process(pid).name() == processname:

            print(pid)

            break

    else:

        print("not found")

        

if judgeprocess('notepad++.exe') == 0:

    print('success')

else:

    pass

 通过进程ID判断

import errno

import os

import sys

 

 

 

def pid_exists(pid):

    """Check whether pid exists in the current process table.

    UNIX only.

    """

    if pid < 0:

        return False

    if pid == 0:

        # According to "man 2 kill" PID 0 refers to every process

        # in the process group of the calling process.

        # On certain systems 0 is a valid PID but we have no way

        # to know that in a portable fashion.

        raise ValueError('invalid PID 0')

    try:

        os.kill(pid, 0)

    except OSError as err:

        if err.errno == errno.ESRCH:

            # ESRCH == No such process

            return False

        elif err.errno == errno.EPERM:

            # EPERM clearly means there's a process to deny access to

            return True

        else:

            # According to "man 2 kill" possible error values are

            # (EINVAL, EPERM, ESRCH)

            raise

    else:

        return True

推荐学习《Python教程》!

以上是 python3怎么判断进程是否存在 的全部内容, 来源链接: utcz.com/z/525776.html

回到顶部