用户输入一个英文字符串,使用高阶函数将字符串中每个字符出现的次数以字典的形式返回
时间: 2024-03-16 12:42:55 浏览: 47
好的,可以使用 Python 中的 reduce 和 defaultdict 函数来实现这个功能,代码如下:
```python
from collections import defaultdict
from functools import reduce
def count_chars(s):
char_count = defaultdict(int)
reduce(lambda dic, char: dic.update({char: dic[char]+1}) or dic, s, char_count)
return char_count
```
这里先定义了一个 defaultdict,用于存储每个字符出现的次数。然后使用 reduce 函数,将每个字符依次加入到 defaultdict 中,并更新对应字符的计数器。最后返回这个 defaultdict 即可。
相关问题
用户输入一个英文字符串,使用高阶函数将字符串中每个字符出现的次数以字典的形式返回
好的,可以使用 Python 中的 reduce 和 defaultdict 函数来实现这个功能,代码如下:
```python
from collections import defaultdict
from functools import reduce
def count_chars(s):
char_count = defaultdict(int)
reduce(lambda dic, char: dic.update({char: dic[char]+1}) or dic, s, char_count)
return char_count
```
这里先定义了一个 defaultdict,用于存储每个字符出现的次数。然后使用 reduce 函数,将每个字符依次加入到 defaultdict 中,并更新对应字符的计数器。最后返回这个 defaultdict 即可。
阅读全文