我有一个namedtuple,其中包含几个namedtuples。
每个内部元组基本上都有唯一的“id”以及其他有用的信息。 我知道我想要访问的元组的ID,我想知道是否有一种简单的方法来“索引”namedtuple来提取我想要的确切元素而不执行以下操作:
for inner_tuple in outer_tuple:
if inner_tuple.id == desired_id:
found tuple = inner_tuple
break
答案 0 :(得分:2)
您可以使用next()
的生成器表达式查找第一个匹配项,如果没有匹配项,则可以使用None
。这仍然需要一个循环:
found = next((tup for tup in outer_tuple if tup.id == desired_id), None)
另一种方法是使用id
上键入的词典。