Python
 Computer >> コンピューター >  >> プログラミング >> Python

文字列内の単語の出現回数をカウントするPythonプログラムの作成方法

この記事では、ユーザーから入力された文字列の中に、指定した単語が何回出現するかをカウントし、その結果を出力するPythonプログラムを紹介します。文字列操作の基礎を学ぶのに最適な題材です。

実行例

入力:Python is an interpreted high-level programming language for general purpose programming.
カウントする単語:programming
出力:2

上記の例では、「programming」という単語が文中に2回出現しているため、出力は「2」となります。

アルゴリズム

wordoccurences(n, p)
/* nは入力文字列、pは出現回数をカウントする対象の単語 */
ステップ1:文字列をスペースで分割する
ステップ2:カウンター変数cを0で初期化し、単語が一致した場合はcを1ずつ増加させる
ステップ3:forループを使用して各単語を検索する
ステップ4:条件が真であればカウンターcを増やし、最終的な結果を表示する

サンプルコード

def wordoccurences(n, p):
   x = n.split(" ")
   c = 0
   for i in range(0, len(x)):
      # 一致が見つかったらカウントを増やす
      if (p == x[i]):
         c = c + 1
   return c       
# ドライバーコード
n=input("Enter String ::>")
p=input("Enter the word to count occurrence ::>")
print("THE NUMBER OF OCCURRENCE OF A WORD ",p,"is",wordoccurences(n, p))
# 指定された文字列内の単語の出現回数をカウントする

コードの解説

  • split(" "):入力文字列をスペース区切りで分割し、単語のリストを作成します。
  • カウンター変数c:一致する単語が見つかるたびに1ずつ加算されます。
  • forループ:リスト内のすべての単語を順番に比較していきます。

実行結果

Enter String ::>python is an interpreted high level programming language for general purpose programming
Enter the word to count occurrence ::>programming
THE NUMBER OF OCCURRENCE OF A WORD programming is 2

補足:より簡潔な書き方

Pythonでは、文字列オブジェクトが持つcount()メソッドを使うことで、同じ処理を1行で実現できます。

n = input("Enter String ::>")
p = input("Enter the word to count occurrence ::>")
print("THE NUMBER OF OCCURRENCE OF A WORD", p, "is", n.count(p))

ただし、count()メソッドは部分文字列としての一致もカウントするため、完全な単語単位で厳密に数えたい場合は、上記のようにsplit()で分割して比較する方法が確実です。用途に応じて使い分けるとよいでしょう。

  1. Pythonでタプル内の特定要素の出現回数をカウントする方法を徹底解説

    この記事では、ユーザーが入力したタプルの中に、指定した要素が何回出現するかを数えるPythonプログラムを紹介します。初心者にもわかりやすいように、アルゴリズムの手順・サンプルコード・実行結果を順番に解説していきます。 例 入力: A = [10, 20, 30, 40, 10, 100, 80, 10] X = 10 出力: 3 この例では、リスト(タプル)内に「10」が3つ含まれているため、出力は「3」になります。 アルゴリズム 出現回数をカウントする関数 countoccur(A, x) の処理手順は以下の通りです(Aは配列、xは出現回数を数えたい要素)。 ステップ1

  2. Pythonで数値の合計ビット数をカウントするプログラムの作成方法

    まず数値を入力し、bin()関数を使ってその数値を2進数に変換します。次に出力される文字列の先頭2文字「0b」を削除し、最後に2進数文字列の長さを計算することで、合計ビット数を求めることができます。 実行例 入力:200 出力:8 解説 200の2進数表現は 11001000 です(8桁=8ビット) アルゴリズム ステップ1:数値を入力する。 ステップ2:bin()関数を使用して、数値を2進数に変換する。 ステップ3:bin()関数は出力文字列の先頭に「0b」という接頭辞を付加するため、 出力された2進数文字列から最初の2文字「0b」を削除する。 ステップ4:2進