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

如何解析存储在变量中的系统进程数据以查找特定进程?

查找系统特定进程的实现方案

要查找系统中运行的特定进程,我们可以通过调用系统命令获取进程列表,再解析数据筛选出目标进程。以下是具体实现代码及优化说明:

import subprocess

# 调用TASKLIST命令获取CSV格式的进程列表
output = subprocess.check_output(('TASKLIST', '/FO', 'CSV')).decode()
# 去除多余引号并按行分割
output = output.replace('"', '').split('\r\n')
# 获取表头字段
keys = output[0].split(',')
# 处理每行进程数据,过滤空行
proc_list = [i.split(',') for i in output[1:] if i]
# 构建进程字典:键为进程名,值为进程详细信息的字典
proc_dict = dict((i[0], dict(zip(keys[1:], i[1:]))) for i in proc_list)

# 按进程名小写排序并打印所有进程名
for name, values in sorted(proc_dict.items(), key=lambda x: x[0].lower()):
    print(name)

快速定位特定进程

如果要找到指定名称的进程(比如notepad.exe),可以直接利用字典的键查询特性,添加以下筛选逻辑:

target_proc = "notepad.exe"
if target_proc in proc_dict:
    print(f"找到目标进程:{target_proc}")
    print(f"进程详情:{proc_dict[target_proc]}")
else:
    print(f"未找到进程:{target_proc}")

代码逻辑说明

  • 借助subprocess.check_output调用Windows系统的TASKLIST命令,通过/FO CSV参数指定输出格式为CSV,便于后续解析。
  • 移除CSV内容中的多余引号,避免分割数据时出现异常。
  • 将表头与每行进程数据映射为嵌套字典结构,实现通过进程名快速查询PID、内存占用等详细信息的功能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 11:25:19