今回は、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関数をリストや文字列の使い方を解説する