加入收藏 | 设为首页 | 会员中心 | 我要投稿 鄂州站长网 (https://www.0711zz.com/)- 数据分析、网络、云渲染、应用安全、大数据!
当前位置: 首页 > 编程开发 > Python > 正文

python – 列表中的命名元组

发布时间:2020-12-30 17:05:47 所属栏目:Python 来源:互联网
导读:我有以下清单 a = [[a1, b1, c1, [d1, e1, f1], [a2, b2, c2, [d2, e2, f2], [a3, b3, c3, [d3, e3, f3]] 我怎样才能将它变成一个命名元组列表 a[0].val1 a1a[1].val2 b2a[0].box [d1, e1, f1] 使用 collections.name

我有以下清单

a = [[a1,b1,c1,[d1,e1,f1],[a2,b2,c2,[d2,e2,f2],[a3,b3,c3,[d3,e3,f3]]

我怎样才能将它变成一个命名元组列表

a[0].val1
>>> a1
a[1].val2
>>> b2
a[0].box
>>> [d1,f1]

解决方法

使用 collections.namedtuple class factory创建一个命名的元组类:
mynamedtuple = collections.namedtuple('mynamedtuple',('val1','val2','val3','box'))

somenamedtuple = mynamedtuple('a1','a2','a3',['d1','e1','f1'])
somenamedtuple.box  # returns ['d1','f1']

您可以使用列表解析转换现有列表:

a = [mynamedtuple(*el) for el in a]

(编辑:鄂州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读