统计Python字符串中单词出现次数的函数
发布时间:2023-10-06 23:51:03
要统计Python字符串中单词出现的次数,可以使用以下函数:
def count_words(string):
# 将字符串转换为全部小写字母
string = string.lower()
# 用空格分割字符串,得到单词列表
words = string.split()
# 创建一个空字典,用于存储每个单词的出现次数
word_count = {}
# 遍历单词列表
for word in words:
# 使用字典的get()方法,传入单词作为键,返回该键的值,如果键不存在返回0
word_count[word] = word_count.get(word, 0) + 1
return word_count
这个函数的实现过程如下:
1. 将输入的字符串转换为小写字母,这样可以忽略大小写的差异。
2. 使用split()方法将字符串按照空格分割为单词列表。
3. 创建一个空字典,用于存储每个单词的出现次数。
4. 遍历单词列表,对于每个单词,使用字典的get()方法获取该单词的值,如果不存在则返回0。然后将其加1,并将结果存储在字典中。
5. 返回保存了单词出现次数的字典。
下面是一个示例:
string = "I love Python programming. Programming is fun!" result = count_words(string) print(result)
输出:
{'i': 1, 'love': 1, 'python': 1, 'programming.': 1, 'programming': 1, 'is': 1, 'fun!': 1}
注意,这个函数会将标点符号一同计算在内。如果需要在统计时忽略标点符号,可以通过字符串处理方法进行预处理。此外,由于函数使用了split()方法按照空格分割字符串,所以对于连续的空格或换行符并不会解析为新的单词,需要根据具体情况进行处理。
