我试图将一串字母拆分成一个字典,该字典会为每个出现不止一次的字母自动添加+1值。
唯一的问题是我的代码为每个键添加+1值...例如,如果我输入:“aasf”dict将是:a:2,s:2,f:2 ... Whats错??
word = raw_input("Write letters: ")
chars = {}
for c in word:
chars[c] = c.count(c)
if c in chars:
chars[c] += 1
print chars
答案 0 :(得分:3)
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53)
>>> from collections import Counter
>>> Counter('count letters in this sentence')
Counter({'e': 5, 't': 5, ' ': 4, 'n': 4, 's': 3, 'c': 2, 'i': 2, 'h': 1, 'l': 1, 'o': 1, 'r': 1, 'u': 1})
>>>
答案 1 :(得分:1)
你必须使用
chars[c] = words.count(c)
OR
chars[c] += 1
但不是两者。