【发布时间】:2014-04-13 02:08:03
【问题描述】:
这很好用:
def find_processes():
name = "ProcessName.exe"
pid_list = psutil.get_pid_list()
for pid in pid_list:
try:
if str(psutil.Process(pid).name()) == name:
return True
except:
pass
return False
这不是:
def find_processes():
name = "ProcessName.exe"
pid_list = psutil.get_pid_list()
for pid in pid_list:
if str(psutil.Process(pid).name()) == name:
return True
return False
它会引发错误:AccessDenied: (pid=560) 我在 Windows 环境中,需要访问所有进程的名称。我已经有一个工作代码(前者),所以我的问题更多是出于好奇。
try/except 语句在第一个示例中的作用是什么,如果我在第二个示例中删除它们为什么不起作用?
【问题讨论】:
-
有什么区别? (除了缩进。)
-
您似乎没有删除第二种情况下的 try except 语句。
-
@ebarr 愚蠢的我没有正确编辑。现在应该有所不同了。
标签: python windows process psutil