Python - 文字または文字列の出現回数を数える

Pythonで文字または文字列の出現回数を数えるには、str.count()メソッドを使用します。str.count()メソッドは、指定された文字または文字列が、文字列中に何回出現するかを返します。

文字列の出現回数を数えることは、テキスト解析やデータ処理などの場面でよく必要になります。例えば、ある文章中に特定の単語がどれだけ使われているかを調べたりすることができます。

str.count()メソッド の使い方

出現回数 = "文字列".count("数えたい文字・または文字列")

次のコードは 文字列"Hello, world!" 中の "l" の個数を表示します。

# "l" の個数を数える
cnt = "Hello, world!".count("l")

# 結果 = 3
print(f'"Hello, world!".count("l") -> {cnt}')

次のコードは 変数を使用し、文字列"Hello, world!" 中の "world" の個数を表示します。

# "ll" の個数を数える
text = "Hello, world!"
find = "ll"
cnt = text.count(find)

# 結果 = 1
print(f'"Hello, world!".count("ll") -> {cnt}')
サンプルコードの実行結果
サンプルコードの実行結果

大文字小文字を区別せずに判定する方法

str.count()メソッド は大文字小文字を区別して判定するため、str.lower()またはstr.upper()メソッドで大文字・小文字を統一して判定します。str.lower()メソッドはアルファベットをすべて小文字に、str.upper()メソッドは大文字にして返します。

次のコードは大文字小文字を区別せず、文字の出現回数を判定しています。

text = "Hello, world!"
find = "hello"

# 大文字小文字を区別するため、結果 = 0
cnt = text.count(find)
print(f'"Hello, world!".count("hello") -> {cnt}')


# 小文字に統一してからしてから判定しているため、結果 = 1
cnt = text.lower().count(find.lower())
print(f'"Hello, world!".lower().count("hello".lower()) -> {cnt}')
サンプルコードの実行結果
サンプルコードの実行結果

検証環境