Pythonで文字列内の単語の出現回数をカウントする方法は何ですか?
Pythonの組み込み機能や文字列メソッドを使用して、文字列内の単語の出現回数をカウントする方法は次の通りです。
def count_words(string):
# 将字符串转换为小写,并去除标点符号
string = string.lower().replace(",", "").replace(".", "").replace("!", "").replace("?", "")
# 将字符串分割成单词列表
words = string.split()
# 创建一个空字典来存储单词出现的次数
word_count = {}
# 遍历单词列表,并统计每个单词出现的次数
for word in words:
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
# 返回单词出现的次数字典
return word_count
# 测试示例
string = "I am a student. I am studying computer science."
word_count = count_words(string)
print(word_count)
出力結果は、
{'i': 2, 'am': 2, 'a': 1, 'student': 1, 'studying': 1, 'computer': 1, 'science': 1}
このコードは、まず文字列を小文字に変換し、句読点を取り除きます。そして、文字列を単語のリストに分割します。次に、単語の出現回数を記録するための空の辞書を作成します。その後、単語のリストをループし、各単語の出現回数をカウントして、結果を辞書に格納します。最後に、単語の出現回数の辞書を返します。