gpt4 book ai didi

python - 返回列表中大于某个阈值的最后一个元素

转载 作者:行者123 更新时间:2023-12-01 02:14:05 24 4
gpt4 key购买 nike

假设我们在 Python 中有以下列表:

[1,2,3,4,5,4,6,3,1,9,4,3,8,4,2,3,4,4,1,8]

我们如何返回被认为是 >=4 的最后一个元素?

我尝试做一个for循环并寻找索引,但除了得到意想不到的结果之外,我觉得我经历了一些困惑,并认为可能有一种更简单的方法来解决它。

谢谢。

最佳答案

reversed反转lst,并调用next

next(i for i in reversed(lst) if i >= 4)
8

这是高效的,因为它只迭代返回结果所需的最小数量。这相当于:

for i in reversed(lst):
if i >= 4:
break

print(i)
8

经常发生的情况是不存在满足您的条件的元素,因此 next 根本没有任何可返回的内容。在这种情况下,next 返回 StopIteration,您可以通过使用默认参数调用函数来避免 -

next((i for i in reversed(lst) if i >= 4), None)

如果没有元素满足条件 i >= 4,则返回 None

关于python - 返回列表中大于某个阈值的最后一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48513956/

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