目标:我的目标是获取所有进程名称和进程 ID,以生成这样的输出:{process 1: 123},{process 2: 321},{process 3: 132}然后 id 能够使用.get()函数来获取特定id的 .目前:我能够做到这一点:import wmic = wmi.WMI ()list = []for process in c.Win32_Process (): list.append(process.Name)print(list)没有 process.ProcessId 它工作正常。错误:如果我像这样尝试使用 process.ProcessId :import wmic = 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)如何创建字典以将这两个值附加到一个大字典中?
1 回答

撒科打诨
TA贡献1934条经验 获得超2个赞
import wmi
c = wmi.WMI()
processes = {process.Name: process.ProcessId for process in c.Win32_Process()}
print(processes)
最直接的是使用列表理解。请注意,在此方案中,重复的进程名称将相互覆盖;process.ProcessId: process.Name会更万无一失。
添加回答
举报
0/150
提交
取消