一些例外错误

时间:2016-06-03 14:17:11

标签: python string dictionary

嘿,我写了这个python代码。

str="abc def abc def abc def abc"
str=str.split(" ")
dict={0:'word'}
count=0
temp_list=[]
temp_list1=[]
for i in str:
   dict[str.count(i)]=i

for key,values in dict.items():
   print(key,values)

o / p:0字 3 def 4 abc

没关系,但是当我尝试给这个字符串时,

str="abc def abc def"
str=str.split(" ")
dict={0:'word'}
count=0
temp_list=[]
temp_list1=[]
for i in str:
   dict[str.count(i)]=i

for key,values in dict.items():
   print(key,values)

O / P: 0字 2 def

输出中缺少2个abc值。

1 个答案:

答案 0 :(得分:2)

词典不能有重复的键。 {2: "def", 2: "abc"}是不可能的输出。如果您正在尝试制作直方图,则应该针对{"def": 2, "abc": 2}。看起来你已经把钥匙和价值观搞混了。

尝试使用collections.Counter

>>> from collections import Counter
>>> str="abc def abc def"
>>> d = Counter(str.split())
>>> d
Counter({'abc': 2, 'def': 2})