У меня есть строка букв в качестве ввода.
input:
my_str = 'soumendra_in_stackoverflow'
Я хочу вывод, как показано ниже.Где все гласные должны быть напечатаны вместе с их соответствующим количеством в словаре.
необходим вывод :
{'a': 2, 'e': 2, 'i': 1, 'o': 3, 'u': 1}
Для этого я написал следующую программу:
ans_dict = {}
for letter in my_str:
if letter in ['a', 'e', 'i', 'o', 'u']:
ans_dict[letter] = ans_dict.get(letter, 0) + 1
print(ans_dict)
Работает.Тем не менее, как написать эту же логику в одну строку (возможно, с использованием словарного понимания) без использования collections.Counter
?
Я пробовал это, но это не удается.
{x: + 1 for x in a if x in ['a', 'e', 'i', 'o', 'u'] }