You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python psutil获取macOS运行进程时如何单独提取进程名称?

解决方法

报错的核心原因是你遍历得到的app是psutil.Process类的实例对象,不是字符串类型,因此不存在字符串的split方法。psutil已经内置了直接读取进程名称的方法,不需要手动解析打印输出的字符串。

推荐实现方案

直接调用Process实例的name()方法即可获取进程名,process_iter传入参数预加载需要的属性还可以提升执行效率,代码示例如下:

import psutil

for proc in psutil.process_iter(['name']):
    # 直接输出进程名称
    print(proc.name())

补充说明

  • 你之前直接打印app得到的格式化字符串,是Process类自定义的字符串输出逻辑,仅用于直观展示对象信息,不是对象本身的类型。
  • 除了进程名之外,你还可以通过实例的pid属性获取进程ID、status()方法获取进程状态、create_time()方法获取进程启动时间,无需手动解析字符串。

如果确实有特殊场景需要解析打印输出的字符串(极不推荐,容易因psutil版本更新出现格式兼容问题),可以先将实例转为字符串再处理,示例如下:

import psutil

applist = list(psutil.process_iter())
for app in applist:
    app_str = str(app)
    name = app_str.split("name='")[1].split("',")[0]
    print(name)

内容的提问来源于stack exchange,提问作者Leshem Xiang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 09:24:03