【发布时间】:2014-05-13 15:31:01
【问题描述】:
我在比较 dict 中的 char 键和列表中的 char 时遇到了问题。 任务是阅读文本并计算所有开头的字母。
我有一个带有字符的列表:
bchars = ('i','g','h','n','h')
一个带有字母和频率的字典默认为零:
d = dict(dict())
for i in range(97,123):
d[i-97]={chr(i):0}
不,我想检查如下:
for i in range(len(bchars)):
for j in range(len(d)):
if(bchars[i] in d[j]):
d[j][chr(i+97)] +=1
else:
d[j][chr(i+97)] +=0
所以如果列表中的字符是某个位置的键,则 += 1 否则 += 零 我认为通过使用 if/else 语句可以绕过 KeyError。
有没有更优雅的解决方案?
【问题讨论】:
-
对不起,但我已经多次尝试阅读和重读这个问题,但我仍然不太明白你在这里想要达到什么目的。
标签: python dictionary frequency keyerror