30秒学会 Python 片段 · 2018年8月17日

30秒学会 Python 片段 – find_last.md


title: find_last
tags: list,beginner

Returns the value of the last element in the provided list that satisfies the provided testing function.

Use list comprehension and next() to return the last element in lst for which fn returns True.

代码实现

def find_last(lst, fn):
  return next(x for x in lst[::-1] if fn(x))

使用样例

find_last([1, 2, 3, 4], lambda n: n % 2 == 1) # 3