首先分析问题,主要是三个:
- 怎么得到字符
- 怎么统计个数
- 怎么输出比较合适
解决第一个问题:
字符串中可能会出现重复字符,所以需要进行去重,而python中有一个数据类型可以解决这个问题,set。
解决第二个问题:
python中字符串存在count方法,可以对字符串中数据进行统计。
解决第三个问题:
现在已经拿到了字符与个数,最直接的方式是拼接,但python中存在一种叫字典的数据类型,可以以字符为key与出现次数为value。
上代码:
def count_chars(str):
dic = {}
for i in set(str):
dic[i] = str.count(i)
return dic
print(count_chars(str))
使用字典推导式简化下:
print({a: str.count(a) for a in set(str)})