我一直在尝试解决这个问题,目前我很困惑。 有人可以告诉我逐步解决方案或解决此问题的方法吗?
编写一个函数,该函数将字典作为输入并返回字典的字符串键中包含的元音数量。对于本练习,您可以将元音视为字母“ a”,“ e”,“ i”,“ o”或“ u”。 我想一个例子是count_dict_vowels({“ Here”:“ Now”,“ When”:“ Python”})== 3
答案 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}