我有一个如下的命名元组,
tup = myTuple (
a=...,
b=...,
c=...,
)
其中......可以是任何值(字符串,数字,日期,时间等)。现在,我列出了这些命名元组并想要查找,假设c = 1以及a和b的对应值。有没有pythonic方式这样做?
答案 0 :(得分:8)
使用列表理解,就像过滤器一样,
[[record.a, record.b] for record in records if record.c == 1]
例如,
>>> myTuple = namedtuple("Test", ['a', 'b', 'c', 'd'])
>>> records = [myTuple(3, 2, 1, 4), myTuple(5, 6, 7, 8)]
>>> [[record.a, record.b] for record in records if record.c == 1]
[[3, 2]]