gpt4 book ai didi

python - 创建过程字典

转载 作者:太空宇宙 更新时间:2023-11-03 15:19:47 26 4
gpt4 key购买 nike

我的目标:我需要创建一个函数来检索每个进程的 PID 和名称并将它们返回到字典中。我将把它上传到 Django,并且确实需要两个不同的字典。 1 个包含每个正在运行的进程名称和 PID,另一个包含所有已安装的名称和 PID。到目前为止,我可以让它很好地打印字典,但不能正确返回。也许我叫错了。我对此比较陌生。

import psutil
def pid_name():
for proc in psutil.process_iter():
try:
pinfo = proc.as_dict(attrs=['pid', 'name'])
except psutil.NoSuchProcess:
pass
else:
return pinfo

如果您要子“return”进行打印,则字典将打印良好。我如何从这里调用该字典?它是否正确返回??

最佳答案

您仅返回第一个结果,因为您的 return 语句位于 for block 内。由于您无法创建具有重复键的字典,因此您应该返回字典列表。尝试使用列表理解来返回所有进程:

import psutil

def pid_name():
return [proc.as_dict(attrs=['pid', 'name']) for proc in psutil.process_iter()]

更新:

如果您尝试创建一个以 pid 作为键、name 作为值的字典,那就更简单了:

def pid_name():
return {proc.pid: proc.name() for proc in psutil.process_iter()}

关于python - 创建过程字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43623266/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com