我被告知
编写方法freq(a),返回一个字典,对于每个唯一的字典 a中的值x,将x映射到a中x的出现次数。
这是我第一次使用词典,我尝试阅读以了解如何解决这个问题,但我不确定如何编写代码..
这是我认为我必须要做的...... 1.创建一个包含两个值的字典。 [X:Y] 2.评估清单。 3.1如果列表中的值不在字典中,则使值x:1 3.2如果列表中的值在字典中,则使值y + 1 4.返回结果
这是你怎么做这个问题的? 我将如何编码第3步?
答案 0 :(得分:1)
不使用collections.Counter
或collections.defaultdict
:
def freq(a):
D = {}
for v in a:
D[v] = D.get(v, 0) + 1
return D
答案 1 :(得分:0)
你几乎拥有它。要检查字典中是否有值,只需使用in
:
d = {1:2, 3:4}
print 1 in d # ==> True
print 2 in d # ==> False
然后,您只需使用d[x] = y
正确设置值。