Введение
В Python мы можем использовать списочное выражение и next(), чтобы найти значение первого элемента в заданном списке, который удовлетворяет заданной проверочной функции. Это может быть полезно в многих сценариях, таких как поиск первого нечетного числа в списке или первого строкового значения, которое начинается с определенной буквы.
Найти совпадающее значение
Напишите функцию под названием find(lst, fn), которая принимает список lst и проверочную функцию fn в качестве аргументов. Функция должна возвращать значение первого элемента в lst, для которого fn возвращает True. Если ни один элемент не удовлетворяет проверочной функции, функция должна вернуть None.
def find(lst, fn):
return next(x for x in lst if fn(x))
find([1, 2, 3, 4], lambda n: n % 2 == 1) ## 1
Резюме
В этом испытании вы узнали, как найти значение первого элемента в списке, который удовлетворяет заданной проверочной функции, с использованием списочного выражения и next(). Эта техника может быть полезна в многих сценариях и поможет вам писать более эффективный и краткий код.