python,字符串怎么统计单词个数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python,字符串怎么统计单词个数相关的知识,希望对你有一定的参考价值。

如果你是指一串单词,空格隔开的,统计词频,就用列表和字典来。
比如输入的是这样:this one ok this one two three go end at end
dic1=
n=input().split()
for i in n:
缩进if i in dic1:dic1[i]+=1
缩进else:dic1[i]=1
print(dic1)
参考技术A # 2021-05-13 Luke
name = ['win', 'admin', 'newpos', 'win', 'win', 'crew', 'win']
print(name.count('win'))

统计一段文章的单词频率,取出频率最高的5个单词和个数(python)

练习题:统计一段英语文章的单词频率,取出频率最高的5个单词和个数(用python实现)

怎么判定单词?
1 不是字母的特殊字符作为分隔符分割字符串 (避免特殊字符的处理不便,全部替换成‘-‘)
2 遍历字符串,取每个word
3 正则匹配

怎么统计个数?
将wordlist的word和word的个数放入dict,排序


‘‘‘
dinghanhua
2018-11-11
练习:一段英文文章,统计每个单词的频率,返回出现频率最高的5个单词和次数
‘‘‘

import re

art =  If we want to" run Locust  / distributed on multiple machines we would also have to specify the master host when starting the slaves (this is not needed when running Locust distributed on a single machine, since the master host defaults to 127.0.0.1):

‘‘‘
怎么判定单词?
1 不是字母的特殊字符作为分隔符分割字符串
2 遍历字符串,取每个word
3 正则匹配

怎么统计个数?
将wordlist的word和word的个数放入dict,排序
‘‘‘

 

#  找出所有不是字母的字符替换成统一的字符,spit()分割之后便是单词
word_dict = {} #用于统计 word:个数
word_list = [] #用于存放所有单词

for letter in art:
    if not letter.isalpha():
        art = art.replace(letter,-)

word_list = art.split(-) #分隔单词

x = word_list.count(‘‘)
for i in range(x): #删除多余的空子串
    word_list.remove(‘‘)

print(所有的单词列表:,word_list)

 

#正则表达式分隔
for letter in art:
    if not letter.isalpha():
        special_set.add(letter)
print(所有不是字母的字符:,special_set)

pattern = ‘‘
for s in special_set:
    pattern += s
pattern = [+pattern+]
word_list = re.split(pattern,art) #还要去除空格

 

# 遍历字符串,获取每个word追加到wordlist
word =‘‘
word_list2 = []

for letter in art:
    if letter.isalpha(): #如果是字母,追加到word
        word += letter
    else:
        if word != ‘‘:
            word_list2.append(word) #不是字母,word不为空的话追加wordlist
            word = ‘‘ # word置空
print(word_list2)

 

# 正则表达式匹配单词
pattern = r[a-zA-Z]+
word_list3 = re.findall(pattern,art) #正则表达式就是精简
print(word_list3)

 

最后的统计的代码:

#统计
for word in word_list:
    word_dict[word] = word_list.count(word) #key=单词,value=单词在list里的count

#取最多的前五个
print(sorted(word_dict.items(),key = lambda x:x[1],reverse=True)[0:5]) #dict根据value倒序,取前5个

 

the end!












以上是关于python,字符串怎么统计单词个数的主要内容,如果未能解决你的问题,请参考以下文章

python统计个单词数目

python统计单词中字母个数

python求单词个数

用python统计一段文本中单词出现的次数

输入一个字符串,统计其中包含的单词个数,假设单词与单词之间用空格分隔。

Python面试题10-统计字符串中每个单词出现的个数两个列表合并