gpt4 book ai didi

python - 在列表中查找第一个元素和索引匹配条件

转载 作者:行者123 更新时间:2023-12-02 18:50:54 24 4
gpt4 key购买 nike

考虑这个简单的例子

mylist = [-1,-2,3,4,5,6]

for idx, el in enumerate(mylist):
if el > 0:
myidx, myel = idx, el
break

myidx, myel
Out[20]: (2, 3)

我有兴趣在 python 列表中找到匹配特定条件的第一个索引和相应的第一个元素(这里,这只是 > 0)。

在上面的代码中,我使用 enumerate 遍历元素,然后使用 if 子句找到正确的元素。这对我来说看起来很麻烦。有一个更好的方法吗?例如使用 native python 函数?

谢谢!

最佳答案

像这样的东西应该可以工作:

l = [-1,-2,3,4,5,6]
list(x > 0 for x in l).index(True)
# Output: 2

要找到所有模式,我们可以使用 python 内置函数

from itertools import filterfalse
f = filterfalse(lambda x: x[1] <= 0, enumerate(l))
print(list(f))
# [(2, 1), (3, 2), (4, 3)]

关于python - 在列表中查找第一个元素和索引匹配条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66792264/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com