Pythonは、その読みやすさと使いやすさから広く受け入れられているプログラミング言語です。

Pythonの中でも特に重要な概念の一つがループ処理であり、これにはwhileループとforループの2種類があります。

今回は、whileループに焦点を当て、その基本的な構造と利点について深掘りします。

これにより、Pythonプログラミングの効率をさらに向上させることができます。

Pythonのfor文についてはこちら

1. イントロダクション

2-1. whileループの基本的な説明

whileループは、指定された条件が真である限り、ループ内のコードを繰り返し実行します。基本的な構文は以下のようになります。

while condition:
    # statements

この構文において、conditionループが続行されるかどうかを判断する条件式であり、statementsループ内で実行されるコードブロックを表します。

具体的な例で説明すると、以下のようなwhileループがあります。

count = 0

while count < 5:
    print(count)
    count += 1

この例では、

  1. 最初にcount変数を0に初期化します。

  2. whileループの条件count < 5をチェックし、条件が真(True)である限りループ内のステートメントを実行します。

  3. ループ内でprint関数を使ってcountの値を表示し、countの値を1増加させます。

  4. countの値が5になると、count < 5の条件が偽(False)になり、ループは終了します。

これにより、画面には0~4までのメッセージが順に表示されます。

count = 0

while count < 5:
    print(count)
    count += 1

【表示結果】
0 1 2 3 4

2-2. whileループの利点と用途

whileループは、条件が満たされる限りコードを繰り返し実行することが可能であるため、非常に柔軟なループ処理を提供します。

これにより、以下のような様々なシナリオでwhileループが利用されます。

  • ユーザーからの入力を待つ
  • 特定の条件が満たされるまでデータを処理する
  • リソースの状態を定期的にチェックする

whileループの柔軟性は、プログラマーが必要なロジックを簡潔かつ効率的に表現することを可能にします。

さらに、whileループは、breakおよびcontinueステートメントと組み合わせることで、ループの制御をさらに強化することができます。

このように、whileループはPythonプログラムの中で重要な役割を果たし、効果的なコードの作成に貢献します。

2. whileループの基本構文

Pythonにおけるwhileループは、特定の条件が満たされている間、繰り返し処理を実行するための方法です。これにより、条件が真である限り、コードの特定の部分を何度も実行することができます。

2-1. 基本的な構文の説明

whileループの基本的な構文は非常にシンプルです。以下のように書かれます。

while 条件:
    実行するコード

ここで、条件はループを続けるかどうかを判断するためのもので、実行するコードはループ内で繰り返し実行されるコードのブロックです。

2-2. 条件が真の間、ループ実行

この見出しの通り、whileループは指定された条件が真(True)である限り、実行するコードを繰り返し実行します。

条件が偽(False)になると、ループは終了し、プログラムはループの次の行から続行します。

例えば、以下のコードは1から5までの数字を画面に表示します。

count = 1
while count <= 5:
    print(count)
    count += 1

このように、whileループは条件が真である間にコードブロックを繰り返し実行する、非常に強力で柔軟な方法を提供します。

3. whileループの使用例

whileループは、状況に応じてさまざまな方法で使用できます。ここでは、whileループのいくつかの一般的な使用例を紹介します。

3-1. シンプルなカウンター例

カウンターは、特定の条件が満たされるまで数を増やすシンプルなプログラムです。以下は、1から10まで数えるシンプルなカウンターの例です。

count = 1
while count <= 10:
    print(count)
    count += 1

このプログラムでは、count変数が10以下である間、whileループが続き、各イテレーション(反復処理)でcountの値が1増えます。

3-2. 無限ループとその避け方

無限ループは、止まることなく永遠に続くループで、通常はエラーによって引き起こされます。それを避けるためには、ループが終了する条件を正しく設定することが重要です。

count = 0

while True:  # この条件は常に真なので、ループは無限に実行されます。
    count += 1
    print(count)
    if count >= 10:
        break  # countが10以上になったらループを終了します。

上記の例では、countが10以上になったらループを終了します。

4. breakとcontinueの使用

4-1. break文の使用

break文は、ループを途中で止めるために使います。breakが実行されると、ループはすぐに終了し、ループの次の行からプログラムが続きます。

count = 0
while count < 5:
    if count == 3:
        break  # countが3の時、ループを止めます
    print(count)  # 0, 1, 2 と出力され、3でループが止まります
    count += 1

4-2. continue文の使用

continue文は、ループの残りの部分をスキップし、次のループのスタートに戻るために使います。

count = 0
while count < 5:
    count += 1
    if count == 3:
        continue  # countが3の時、残りをスキップして次のループに戻ります
    print(count)  # 1, 2, 4, 5 と出力され、3はスキップされます

これらの例はシンプルで、break文とcontinue文がwhileループ内でどのように動作するかを視覚的に示しています。それぞれの文がループの流れにどのように影響するかを理解するのに役立ちます。

5. whileループとforループの比較

whileループとforループはPythonの基本的なループ構造であり、異なるシナリオで利用されます。これらの違いを理解することは、プログラムの効率と可読性を向上させる上で重要です。

5-1. それぞれのループの特性と適した使用場合

whileループ

  • 条件が真である限りループを続けます。
  • 条件が変わらない限りループは終了しません。
  • 未知の回数の繰り返しに適しています。
number = 0
while number < 10:
    print(number)
    number += 1  # numberを1ずつ増やして、numberが10になったらループを終了します

forループ

  • 事前に定義された回数だけループを実行します。
  • ループの開始前に繰り返しの回数がわかっている場合に適しています。
# 例: 0から9までの数字を出力する
for i in range(10):
    print(i)

5-2. 二つのループの構文の違い

whileループ

【基本構文】
while 条件:

・条件が真である間、ループのコードを実行します。

forループ

【本構文】
for 変数 in イテラブル:

・イテラブル(リスト、タプル、文字列など)の各要素に対してループのコードを実行します。

これらの違いを理解することで、特定のタスクに最適なループタイプを選択し、コードを効率的に読み書きすることができます。

【全額返金保証】おすすめプログラミングスクール

な、なんと、なんと! 就職したら全額返金のウズウズカレッジが熱い!

▲YouTubeで累計390万再生を超える学習動画。学習コンテンツは、YouTubeで高評価率98.2%を誇るLinuC学習動画をさらにパワーアップした内容で提供。 さらにYouTubeでは公開していないカリキュラムを専任講師の指導の元、全て受講することが可能です。 https://www.youtube.com/playlist?list=PLXXalsdlzX-InzSH2uMWkoAdd1rE9p0O-

プログラミング未経験でも就職が可能!

な、なんと、なんと、なんとっ!? 未経験でも正社員で働ける!?

▲就職サポートのみならずIT学習のサポートも受けられる (※どちらも完全無料) ・UZUZで利用できる無料のYouTube動画はなんと20本(16時間分)!

https://www.youtube.com/playlist?list=PLXXalsdlzX-IuXHRLIrw9G55Hw6oiXQGS

https://www.youtube.com/playlist?list=PLXXalsdlzX-J7AUuw2zSHit5nRUZ3eDdz

関連記事はコチラ↓