从python中的对象列表中提取属性列表

2024-05-28 18:04:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python中对象的统一列表:

class myClass(object):
    def __init__(self, attr):
        self.attr = attr
        self.other = None

objs = [myClass (i) for i in range(10)]

现在我想提取一个带有该类属性的列表(比如attr),以便传递给它一些函数(例如用于绘制数据)

什么是Python式的做法

attr=[o.attr for o in objsm]

是吗?

也许派生列表并添加一个方法,这样我就可以使用一些习惯用法,比如

objs.getattribute("attr")

是吗?


Tags: 对象inselfnone列表forobjectinit
2条回答

你也可以写:

attr=(o.attr for o in objsm)

这样你就能得到一个节省内存的生成器。有关更多好处,请查看Generator Expressions

attrs = [o.attr for o in objs]是生成类似您所描述的列表的正确代码。不要试图为此子类list。你不喜欢那个片段吗?

相关问题 更多 >

    热门问题