描述
由用户输入若干个数字,中间用“,”分割。
编写程序统计这些数字的出现频率,保存为:“数字:出现的次数”。
如果用户没有输入数字(例如:回车、字符等),系统提示“请输入一个数字。”
输入格式
用户输入:1,2,3,4,3,2,5,5,5
输出格式
{1:1, 2:2, 3:2, 4:1, 5:3}
输入输出示例
输入 | 输出 | |
---|---|---|
示例1 | 1,2,3,4,3,2,5,5,5 | {1: 1, 2: 2, 3: 2, 4: 1, 5: 3} |
示例2 | F | 请输入一个数字。 |
问题分析
先判断是否输入以及输入的是否是数字,
如果没有输入或者输入的不是数字,直接打印“请输入一个数字。”
否则,按照逗号拆分,存入字典,注意要把文本数字转化为真正的数字,使用eval,最后打印即可。
问题解决
inp = input()
if len(inp) == 0 or not inp[0].isdigit():
print('请输入一个数字。')
else:
dic = {}
for each in inp.split(','):
each = eval(each)
dic[each] = dic.get(each, 0) + 1
print(dic)