首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将类对象分配给列表中的项?(python)

如何将类对象分配给列表中的项?(python)
EN

Stack Overflow用户
提问于 2013-10-11 06:15:32
回答 1查看 625关注 0票数 0

我定义了一个包含3个对象的类:

代码语言:javascript
复制
class abc():
     __slots___ = ('1','2',3')

从这里开始,我列出了一个包含大约1000个元素的列表:

代码语言:javascript
复制
lst = [[abc,dfg,9292],[ksdj,lkjsd,9239],...]

每个元素中的第三个元素始终是一个数字。我想将类中名为3的对象赋给第三个元素,这样我就可以对列表进行排序。

为了澄清一些误解,对象3实际上是数量。因此,每个元素中的第三个元素被认为是一个量。

EN

回答 1

Stack Overflow用户

发布于 2013-10-11 06:41:46

现在还不清楚你是在尝试对列表进行排序,还是从列表中的元素创建abc的实例,还是做一些完全不同的事情。

假设您想要按每个子列表的第三个元素对列表进行排序:

代码语言:javascript
复制
lst.sort(key = lambda x: x[2])

会对你的列表进行适当的排序。

如果希望从列表中的每个元素创建abc类型的对象,则需要弄清楚如何处理每个列表元素中的数据。如果你只是想把它存储为实例变量,你可以这样做:

代码语言:javascript
复制
class ABC():
    __slots__ = ('a', 'b', 'c')
    def __init__(self, a, b, c):
        self.a = a
        self.b = b
        self.c = c

obj_list = [ABC(*x) for x in lst]

如果这是您想要的,那么您可以对生成的对象列表进行排序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19307169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档