输出词频前十的单词

 

In [3]:

#去掉特殊符号
def replacePunctuations(line):
    for ch in line:
        if ch in ',./<>?;\:"|[]{}`~!@#$%^&*()_+=-"':
                line=line.replace(ch," ")
    return line
#数每行的单词数
def processLine(line,wordCounts):
    line=replacePunctuations(line)
    words=line.split()
    for word in words:
        if word in wordCounts:
            wordCounts[word]+=1
        else:
            wordCounts[word]=1
 
def main():
    infile=open(r"C:\Users\Administrator\Desktop\test.txt","r")
    wordCounts={}
    for line in infile:
        processLine(line.lower(),wordCounts)
    pairs=list(wordCounts.items())
    items=[[x,y] for [y,x] in pairs]
    items.sort()
    #s输出频率前十的单词
    for i in range(len(items)-1,len(items)-11,-1):
        print(items[i][1]+"\t"+str(items[i][0]))
main()
the	189
of	94
and	65
0	58
accidents	55
in	49
to	41
is	31
accident	28
can	23

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值