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

如何遍历Python类实例列表并转换为字典列表

遍历类实例列表并转换为字典列表

直接访问类实例的字段

Python中类实例的字段是以属性形式存在的,你看到的index=569L, mute=0这类格式只是类的__repr__方法输出的调试字符串,实际访问时直接用.操作符即可:

import pulsectl

pulse = pulsectl.Pulse('mserve')
sink_inputs = pulse.sink_input_list()

# 遍历实例列表,访问每个实例的字段
for item in sink_inputs:
    print(f"索引: {item.index}, 静音状态: {item.mute}, 名称: {item.name}")

转换为字典列表

如果需要把类实例列表转成字典列表,有两种常用方式:

方法1:使用vars()函数自动提取属性

vars()函数可以返回类实例的__dict__属性,包含实例的所有属性键值对:

dict_list = [vars(item) for item in sink_inputs]

# 打印转换后的字典列表
for d in dict_list:
    print(d)

注意:这种方式会包含实例的所有属性,包括一些内部私有属性(比如以_开头的),如果只需要特定字段,可以用下面的方法。

方法2:手动指定需要提取的字段

手动选择你需要的字段,更精准可控:

# 指定需要提取的字段名
fields = ['index', 'mute', 'name']
dict_list = [
    {field: getattr(item, field) for field in fields}
    for item in sink_inputs
]

# 输出结果
for d in dict_list:
    print(d)

这样得到的字典就只包含你需要的index、mute、name三个字段,格式和你熟悉的字典列表一致,方便后续处理。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 19:22:05