Подтвердить что ты не робот

Используйте лямбда-выражение для подсчета элементов, которые меня интересуют Python

Можно ли использовать лямбда-выражение для подсчета интересующих нас элементов? Например, когда мне нужно подсчитать элементы в списке более двух, я пробовал этот код, который возвращает 0.

x = [1,2,3]
x.count(lambda x: x > 2)
4b9b3361

Ответ 1

Примечание: "больше чем" >... => не является допустимым оператором.

Попробуйте sum(y > 2 for y in x)

Или, как было предложено @Jochen, для защиты от нетрадиционных классов n-й стороны, используйте это:

sum(1 for y in x if y > 2)

Ответ 2

Вы можете попробовать любой из следующих

len([y for y in x if y > 2])

или

len(filter(lambda y: y > 2, x))

или лучше

sum( y > 2 for y in x )

Ответ 3

Нет, это не будет работать, но это будет:

len([y for y in x if y > 2])