加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 列表中的命名元组

发布时间:2020-12-16 23:22:43 所属栏目: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,f1] 解决方法 使用 collections.namedtuple class factory创建一个命名的元组类: mynamedt
我有以下清单
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]

(编辑:李大同)

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

    推荐文章
      热点阅读