【问题标题】:python psutil psutil.get_process_list() errorpython psutil psutil.get_process_list() 错误
【发布时间】:2023-03-05 22:05:01
【问题描述】:

我试图用 python psutil 做一些事情,但得到一个奇怪的错误。

procs = psutil.get_process_list()

得到以下错误:

AttributeError: 'module' object has no attribute 'get_process_list'

我发现的唯一一件事是: https://github.com/giampaolo/psutil/issues/524

但除了将其粘贴到另一个目录(我尝试过但对我不起作用)之外,没有真正的解决方案。有人知道我为什么会收到此错误吗?

【问题讨论】:

    标签: python psutil


    【解决方案1】:

    查看文档here 后,我在psutil 中没有看到get_process_list() 函数,根据this,它已被弃用。

    也许你应该试试这个功能 - process_iter() - 文档 here

    它产生一个迭代器,它将系统中的所有进程作为 Process 类对象返回。

    然后您可以使用list(..) 将它们转换为列表(如果列表是您真正想要的),或者如果您只想迭代它们(如果您只想一个一个地迭代它们,转换为列表将是不必要的开销)。

    例子-

    for proc in psutil.process_iter():
        <do your logic>
    

    或者如果你想要列表 -

    procs = list(psutil.process_iter())
    

    【讨论】:

    • 欢迎 :) ,很高兴为您提供帮助。
    【解决方案2】:

    根据HISTORY.rst,

    #273: psutil.get_process_list() 已弃用。

    改用psutil.process_iter():

    procs = list(psutil.process_iter())
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-08
      • 2022-08-20
      相关资源
      最近更新 更多