python判断进程是否存在
生活随笔
收集整理的這篇文章主要介紹了
python判断进程是否存在
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 進程名?
import psutildef judgeprocess(processname):pl = psutil.pids()for pid in pl:if psutil.Process(pid).name() == processname:print(pid)breakelse:print("not found")if judgeprocess('notepad++.exe') == 0:print('success') else:pass上面代碼網友提出有問題,暫時沒驗證,記錄下修改后的 # coding:utf-8 import psutil# pl = psutil.pids() # for pid in pl: # if psutil.Process(pid).name() == 'notepad++.exe': # print(pid)def checkprocess(processname):pl = psutil.pids()for pid in pl:if psutil.Process(pid).name() == processname:return pid# print(isinstance(checkprocess("notepad++.exe"),int))if isinstance(checkprocess("notepad++.exe"),int):print("進程存在") else:print("進程不存在")?
?2. 進程ID
import errno import os import sysdef pid_exists(pid):"""Check whether pid exists in the current process table.UNIX only."""if pid < 0:return Falseif 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 processreturn Falseelif err.errno == errno.EPERM:# EPERM clearly means there's a process to deny access toreturn Trueelse:# According to "man 2 kill" possible error values are# (EINVAL, EPERM, ESRCH)raiseelse:return True?
總結
以上是生活随笔為你收集整理的python判断进程是否存在的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初识Latex
- 下一篇: python实现根据经纬度画地图热力图