编写一个将字典作为输入并返回元音数量的函数

时间:2018-07-10 20:28:44

标签: python python-3.x

我一直在尝试解决这个问题,目前我很困惑。 有人可以告诉我逐步解决方案或解决此问题的方法吗?

编写一个函数,该函数将字典作为输入并返回字典的字符串键中包含的元音数量。对于本练习,您可以将元音视为字母“ a”,“ e”,“ i”,“ o”或“ u”。 我想一个例子是count_dict_vowels({“ Here”:“ Now”,“ When”:“ Python”})== 3

1 个答案:

答案 0 :(得分:2)

您没有指定想要输出的样子,所以我用相同的键但以元音的数量作为值创建了一个新词典。

此处的“技巧”是使用map()来利用str方法count()并对所有值求和。

vowels = ['a', 'e', 'i', 'o', 'u']

sample_dict = {
    'abc': 'xyz',
    'ee': 'xyz',
    'aei': 'xyz',
    'uuu': 'xyz'
}

output_dict = {
    key: sum(map(key.count, vowels)) for key in sample_dict
}

给出输出:

{'abc': 1, 'ee': 2, 'aei': 3, 'uuu': 3}