python统计字符串 s 中前 10 个高频单词的出现次数,将单词和次数写入 wordnum.txt 文件。
时间: 2024-03-14 14:43:45 浏览: 115
好的,以下是实现代码:
```python
# 导入必要的库
import re
from collections import Counter
# 定义要处理的字符串
s = "Hello world, hello python, hello AI, python is great, AI is awesome"
# 使用正则表达式将字符串拆分成单词列表
words = re.findall(r'\b\w+\b', s)
# 统计单词出现次数
word_counts = Counter(words)
# 获取前 10 个高频单词及其出现次数
top_words = word_counts.most_common(10)
# 将结果写入文件
with open('wordnum.txt', 'w') as f:
for word, count in top_words:
f.write(f'{word}: {count}\n')
```
在上述代码中,我们首先使用正则表达式将字符串 `s` 拆分成单词列表 `words`,然后使用 `collections` 库中的 `Counter` 类对单词进行计数,得到每个单词的出现次数。接着,我们使用 `most_common()` 方法获取前 10 个高频单词及其出现次数,并将结果写入文件 `wordnum.txt` 中。
相关问题
统计字符串 s 中前 10 个高频单词的出现次数,将单词和次数写入 wordnum.txt 文件
好的,你可以使用 Python 中的 Counter 对象来统计字符串中单词的出现次数,并使用文件操作将结果输出到 wordnum.txt 文件中。以下是代码实现:
```python
from collections import Counter
s = "This is a test string. This string is for testing purposes. Test is the keyword in this string."
words = s.lower().split() # 将字符串转为小写,并按空格分割为单词列表
word_count = Counter(words) # 统计单词出现次数
top_words = word_count.most_common(10) # 获取出现次数最多的前 10 个单词
with open('wordnum.txt', 'w') as f:
for word, count in top_words:
f.write(f"{word}: {count}\n")
```
这里我们首先将字符串转为小写,并按空格分割为单词列表。然后使用 Counter 对象统计单词出现次数,并使用 most_common 方法获取出现次数最多的前 10 个单词。最后,使用文件操作将单词和出现次数写入 wordnum.txt 文件中。
注意,在写入文件时,我们使用了 f-string 来格式化字符串,这是 Python 3.6 以后的新特性,可以使代码更加简洁、易读。
希望对你有所帮助!
统计字符串 s 中前 10 个高频单词的出现次数,将单词和次数写入 wordnum.txt 文件。
好的,我来帮你解决这个问题。首先,我们需要将字符串 s 按照空格分割成单词,并统计每个单词的出现次数。可以使用 Python 的 Counter 类来实现这个功能。然后,我们再将出现次数最多的前 10 个单词写入 wordnum.txt 文件中。下面是示例代码:
```python
from collections import Counter
# 统计单词出现次数
s = "hello world hello python world python python"
words = s.split()
word_count = Counter(words)
# 获取前 10 个高频单词
top_words = word_count.most_common(10)
# 将单词和次数写入文件
with open("wordnum.txt", "w") as f:
for word, count in top_words:
f.write(f"{word} {count}\n")
```
上述代码中,首先将字符串 s 按照空格分割成单词,然后使用 Counter 类统计每个单词的出现次数。接着,使用 most_common 方法获取出现次数最多的前 10 个单词。最后,将这些单词和对应的出现次数写入 wordnum.txt 文件中。
阅读全文