如何将进程名称和进程附加到字典?

目标:


我的目标是获取所有进程名称和进程 ID,以生成这样的输出:


{process 1: 123},

{process 2: 321},

{process 3: 132}

然后 id 能够使用.get()函数来获取特定id的 .


目前:


我能够做到这一点:


import wmi

c = wmi.WMI ()


list = []

for process in c.Win32_Process ():

  list.append(process.Name)

print(list)

没有 process.ProcessId 它工作正常。


错误:


如果我像这样尝试使用 process.ProcessId :


import wmi

c = wmi.WMI ()


list = []

for process in c.Win32_Process ():

  list.append(process.Name, process.ProcessId)

print(list)

我收到此错误:


    list.append(process.Name, process.ProcessId)

TypeError: append() takes exactly one argument (2 given)

如何创建字典以将这两个值附加到一个大字典中?


慕码人2483693
浏览 55回答 1
1回答

撒科打诨

import wmic = wmi.WMI()processes = {process.Name: process.ProcessId for process in c.Win32_Process()}print(processes)最直接的是使用列表理解。请注意,在此方案中,重复的进程名称将相互覆盖;process.ProcessId: process.Name会更万无一失。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python