- 帖子
- 8
- 精华
- 0
- 积分
- 21
- 阅读权限
- 10
- 注册时间
- 2021-7-6
- 最后登录
- 2021-7-7
|
代码如下:
a=input('输入一段字,我能猜出这串字符里面每个字符出现的次数\n')
d={}
for b in a:
d[b]=(a.count(b))
d_order=sorted(d.items(),key=lambda x:x[1],reverse=True)#排序
print(d_order)
运行结果如下:
[('s', 4), ('i', 3), (' ', 3), ('h', 2), ('t', 2), ('o', 2), ('r', 2), ('y', 2)]
但是怎么运行结果输出成如题的格式,我试了以下两种方式:
方式一:for key in d_order:
print("{}:{}".format(key,d_order[key]))
报错如下:Traceback (most recent call last):
File "C:/Users/duoduo520/AppData/Local/Programs/Python/Python39/ChacreterNumber3.py", line 9, in <module>
print("{}:{}".format(key,d_order[key]))
TypeError: list indices must be integers or slices, not tuple
方式二:
for key in d_order:
print(f'"{key}":{d_order[key]}')
报错如下:
Traceback (most recent call last):
File "C:/Users/duoduo520/AppData/Local/Programs/Python/Python39/ChacreterNumber3.py", line 9, in <module>
print(f'"{key}":{d_order[key]}')
TypeError: list indices must be integers or slices, not tuple
看了好长时间还是没明白,怎么修改,请crossin老师指导,谢谢! |
|