Pythonで文字列内の小文字の数をカウントする方法【初心者向け】
文字列に含まれる小文字の数を数えたい場合、文字列を1文字ずつ反復処理(イテレート)するのが基本のアプローチです。各文字が小文字かどうかを判定し、小文字であればカウンターを増加させることで、合計数を求めることができます。
以下に具体的な実装例を示します。
サンプルコード
my_string = "Hi there how are you"
print("The string is :")
print(my_string)
my_counter = 0
for i in my_string:
if(i.islower()):
my_counter = my_counter + 1
print("The number of lowercase characters are :")
print(my_counter)出力結果
The string is : Hi there how are you The number of lowercase characters are : 15
コードの解説
まず、対象となる文字列を定義し、コンソールに表示します。
カウンター用の変数を0で初期化します。
forループを使って、文字列を1文字ずつ反復処理します。
islower()メソッドにより、現在の文字が小文字かどうかを判定します。
小文字だった場合は、カウンターを1つ増やします。
ループが完了した後、最終的なカウント結果がコンソールに出力されます。
よりPythonらしい書き方
上記のコードは理解しやすい反面、やや冗長です。sum()関数とジェネレーター式を組み合わせれば、同じ処理を1行で簡潔に記述できます。
count = sum(1 for c in my_string if c.islower()) print(count) # 結果: 15
この方法では、条件を満たす文字ごとに1を加算していくため、明示的にカウンター変数を管理する必要がありません。可読性と効率の両面で優れているため、実務でもよく使われる書き方です。
-
Pythonで括弧の各深さごとの文字数をカウントするプログラムの作成方法
文字列 s が与えられます。この文字列は「X」「(」「)」の3種類の文字のみで構成されており、括弧は必ずバランスが取れていて、その間に「X」が含まれています。また、括弧は再帰的にネストしている場合もあります。 この課題では、最も浅い深さから最も深い深さへ向かって、各括弧の深さごとに「X」の個数を求めます。 入力例と出力例 たとえば、入力が s = (XXX(X(XX))XX) の場合、出力は [5, 1, 2] になります。 深さ0(最も外側の括弧の中)には「X」が5個 深さ1には「X」が1個 深さ2(最も内側の括弧の中)には「X」が2個 解き方のアプローチ この問題は、次の手順で解くこと
-
セットを使って文字列内の母音の数をカウントするPythonプログラム
本記事では、Pythonを使って文字列内に含まれる母音の数をカウントする方法について解説します。セット(set)を活用した効率的な実装を中心に、初心者の方にもわかりやすく説明していきます。 問題の概要 問題文:任意の文字列が与えられたとき、その文字列に含まれる母音の数をセットを使って数えます。 基本的なアプローチとしては、文字列全体を先頭から順に走査し、各文字が母音であるかどうかを判定します。母音であればカウントを1ずつ増やしていき、最終的な合計を出力します。 実装例 def vowel_count(str_): count = 0 # 母音をセットとして定義 vowe