Python лямбда-синтаксис с буквенной переменной - PullRequest
0 голосов
/ 03 октября 2019

Когда я пытаюсь выполнить лямбда-код, я не умею определять, для чего нужны «буквенные» переменные. Да, это для подсчета W (количество слов), но что означает E?

x = ['user', 'gym', 'spy', 'auto']
n_vowel = map(lambda w: w.count('e'), x)
print(list(n_vowel))
output is : [1, 0, 0, 0]

1 Ответ

0 голосов
/ 03 октября 2019

В лямбда-аргументах нет ничего волшебного. Так уж получилось, что большую часть времени одно письмо достаточно читабельно.

В этом случае w - это одна строка из списка, а 'e' - для подсчета количества раз e в каждом слове:

Это может быть более понятным:

words = ['user', 'gym', 'spy', 'auto']
letter_to_count = 'e'
n_vowel = map(lambda word: word.count(letter_to_count), words)
print(list(n_vowel))

Это эквивалентно

words = ['user', 'gym', 'spy', 'auto']
letter_to_count = 'e'
n_vowl = []
for word in words:
    n_vowl.append(word.count(letter_to_count))
print(n_vowl)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...