【www.bbyears.com--python】
word-wrap: break-word; margin: 5px 0px; color: rgb(0, 0, 0); font-family: " sans="" font-size:="" font-style:="" font-variant-ligatures:="" a="" href="/fw/photo.html" target="_blank" :="" font-weight:="" letter-spacing:="" orphans:="" text-align:="" text-indent:="" text-transform:="" white-space:="" widows:="" word-spacing:="" -webkit-text-stroke-width:="">本文实例讲述了Python实现统计文本文件字数的方法。分享给大家供大家参考,具体如下:
统计文本文件的字数,从当前目录下的file.txt取文件
代码如下# -*- coding: GBK -*-
importstring
importsys
reload(sys)
defcompareItems((w1,c1), (w2,c2)):
ifc1 > c2:
return-1
elifc1==c2:
returncmp(w1, w2)
else:
return1
defmain():
fname="file.txt"
try:
text=open(fname,'r').read()
text=string.lower(text)
except:
print"\nfile.txt is not exist!!! or There is a R/W error! "
sys.exit()
forchin'!"#$%&()*+,-./:;<=>?@[\\]^_`{|}~':
text=string.replace(text, ch,' ')
words=string.split(text)
counts={}
forwinwords:
counts[w]=counts.get(w,0)+1
n=input("\n输入要统计的top单词数:")
items=counts.items()
items.sort(compareItems)
max=len(items)
print"\n单词总计:"+str(len(words))
print"单词净个数(已去重):"+str(max)
print"\n"
ifn >max:
n=max
foriinrange(n):
print"%-10s%5d"%items[i]
if__name__=='__main__':
main()