Давайте рассмотрим список с числами, подобными следующим:
a_lst = [1,2,3,2,3,4,5,6,2,2]
Теперь мне нужно написать программу на python, которая подсчитывает количество вхождений, скажем, «2», используя только «уменьшить».
Я также прошел через следующий вопрос:
с помощью Python Reduce Подсчитать количество вхождений символа в строку
Получил отличныйОтвет, однако я хотел посмотреть, есть ли способ заменить условие «если» внутри лямбда-функции на like (x == 2).Я имею в виду выполнение того же, не используя явно условие «если».
Я думал о том, чтобы найти решение путем передачи лямбда-функции, которая принимает другую лямбда-функцию в качестве аргумента для функции Reduce.Но оказалось, что это всего лишь дневной сон и ничто иное, поскольку после передачи лямбда-функции в качестве аргумента вызов его внутри внешнего тела лямбда-функции потерпел поражение, сделав его лямбда-функцией.
Oneбольше фиаско было о желании создать конструкцию, в которой лямбда-функция могла бы вызывать себя в конце своего тела.(Я понимаю, что приведенная выше строка звучит совершенно бессмысленно, но я имел в виду конструкцию, которая имела эквивалентную мощность лямбды, называющей себя)
Я прошел через концепцию стиля прохождения продолжения, где в терминах питонаФункция возвращает лямбда-функцию, которая принимает аргументы, которые получила функция. Но я не уверен, что по определению продолжение является технически точным.Можно ли его использовать для решения этой проблемы?