import re
sums = dict()
fh= open('wordcount.txt','r')
for line in fh:
words = [word.lower() for word in re.findall(r'\b\w+\b', line)]
for word in (words):
if word in sums:
sums[word] += 1
else:
sums[word] = 1
print sums
fh.close
Run Code Online (Sandbox Code Playgroud)
结果显示
{'and': 1, 'heart': 1, 'love': 2, 'is': 1, 'pass': 1, 'rest': 1, 'wounded': 1, 'at': 3,
'in': 3, 'lie': 1, 'winchelsea': 1, 'there': 1, 'easy': 1, 'you': 2, 'body': 1, 'be':
1, 'rise': 1, 'shall': 4, 'may': 2, 'sussex': 1, 'montparnasse': 1, 'not': 3, 'knee':
1, 'bury': 3, 'tongue': 1, 'champmedy': 1, 'i': 5, 'quiet': 1, 'air': 2, 'fresh': 1,
'the': 1, 'grass': 1, 'my': 3}
Run Code Online (Sandbox Code Playgroud)
代码打印所有单词和计数频率字使用.
我想在单独的行中打印字典.
'and': 1
'heart': 1
'love': 2
...
Run Code Online (Sandbox Code Playgroud)
有可能这样做吗?
jam*_*lak 19
>>> from pprint import pprint
>>> pprint(sums)
{'air': 2,
'and': 1,
'at': 3,
'be': 1,
'body': 1,
....., # and so on...
'you': 2}
Run Code Online (Sandbox Code Playgroud)
>>>for x in sums:
print(repr(x),":",dic[x])
'and' : 1
'heart' : 1
'sussex' : 1
'rise' : 1
'love' : 2
'be' : 1
'may' : 2
'the' : 1
'is' : 1
'in' : 3
'body' : 1
'rest' : 1
'at' : 3
'pass' : 1
'not' : 3
'knee' : 1
'air' : 2
'bury' : 3
'tongue' : 1
'lie' : 1
'winchelsea' : 1
'i' : 5
'there' : 1
'grass' : 1
'quiet' : 1
'shall' : 4
'montparnasse' : 1
'fresh' : 1
'easy' : 1
'wounded' : 1
'you' : 2
'champmedy' : 1
'my' : 3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11709 次 |
| 最近记录: |