【发布时间】:2013-01-20 23:20:50
【问题描述】:
我目前一直在尝试为以下列表理解问题找到一个很好的解决方案:
很容易在两个列表中找到具有相同索引的相等值,例如
>>> vec1 = [3,2,1,4,5,6,7]
>>> vec2 = [1,2,3,3,5,6,9]
>>> [a for a, b in zip(vec1, vec2) if a == b]
[2,5,6]
但是,我只需要出现这些匹配项的列表中的索引,而不是值本身。使用上面的例子,我想要的输出是:[1,4,5]
我四处修补,但我只能想到一个“多线”解决方案。有人知道我如何以更 Python 的方式找到索引吗?
【问题讨论】:
-
你打算用索引做什么?
-
@KarlKnechtel:问得好。你是数学家吗?
标签: python list list-comprehension