今回は、Pythonのcount()メソッドを文字列とリストで使う方法を紹介します。
1. Pythonのcount()関数と文字列
Pythonの文字列には、文字や文字列の出現回数を数えるためのstring.count()メソッドが組み込まれています。
string.count() メソッドは、文字や部分文字列を引数として受け取り、入力された部分文字列が文字列中に何回出現したかを返します。
構文は以下の様な感じです。
string.count(string, start_index,end_index) |
-
substring(必須): 入力文字列中の出現回数を数える必要のある文字列。 -
start_index(optional): 部分文字列の検索を開始するインデックスを指定します。 -
end_index(optional): end_index(optional)`: 部分文字列の検索を終了するインデックス。
例えば、以下の様になります。
inp_str = "JournalDev -- Python @ JournalDev"
str_cnt = inp_str.count("JournalDev")
print(str_cnt)
|
結果は、以下の通りになります。
2 |
例2:
inp_str = "Python Java Python Kotlin"
str_cnt = inp_str.count("Python", 0 , 6)
print(str_cnt)
|
上記の例では、検索する部分文字列として ‘Python’ を渡し、インデックス 0 からインデックス 6 までの間に存在するかどうかをカウントしています。
出力は以下の通り。
1 |
例3:
inp_str = "Python Java Python Kotlin"
str_len=len(inp_str)
str_cnt = inp_str.count("Python", 5 , str_len )
print(str_cnt)
|
ここでは、’Python’ という部分文字列を検索し、インデックス 5 から文字列の終わりまでその出現回数を数えます。
そのため、end_index 引数として文字列の長さを渡しています。
結果は以下の通りです。
1 |
PythonのString count()メソッドです。TypeError
Python の string.count() は引数として単一の部分文字列しか受け付けません。
もし、複数の部分文字列を引数として渡そうとすると、TypeError例外を発生させます。
例えば、以下の様になります。
inp_str = "Python Java Python Kotlin"str_cnt = inp_str.count('Python', 'Java')print(str_cnt) |
結果は以下の通りです。
TypeError Traceback (most recent call last)<ipython-input-40-6084d1350592> in <module>
1 inp_str = "Python Java Python Kotlin"
----> 2 str_cnt = inp_str.count('Python', 'Java')
3 print(str_cnt)
TypeError: slice indices must be integers or None or have an __index__ method
|
2. Python リスト count() 関数
Python のリストには、リスト内の特定の要素の出現をカウントする list.count() メソッドがあります。
list.count() メソッドは、入力リストに存在する特定の値やデータアイテムの出現回数を数えます。
構文は以下の様な感じです。
list.count(value)
|
例として以下の様になります。
inp_lst = ['Apple','Banana','Apple','Grapes','Jackfruit','Apple']
lst_cnt = inp_lst.count('Apple')
print(lst_cnt)
|
結果は以下の通りです。
3 |
例として以下の様になります。
inp_lst = [ ['Rat','Cat'], ['Heat','Beat'], ['Rat','Cat'] ]
lst_cnt = inp_lst.count(['Rat','Cat'])
print(lst_cnt)
|
上の例では、基本的にリストの中に入れ子になっているリスト [‘Rat’, ‘Cat’] の出現回数を数えています。
出力は以下の通り。
2 |
Python count() 関数一覧!
- Python の
string.count() 関数は、入力された文字列が特定の String に含まれるかどうかを数えるために使用されます。 - Pythonの
string.count()関数は、入力された文字列が特定のStringに含まれるかどうかを数えるために使用されます。 -
list.count() 関数は、特定のリストに特定の要素が何回出現するかを調べます。
この記事もチェック:Pythonのsample関数を使ってリストからランダムに要素を抽出する方法
まとめ
この記事では、文字列とリストを使ったPythonのカウント関数の動作を理解しました。
この記事もチェック:Pythonのindex関数をリストや文字列の使い方を解説する