カテゴリ: Python 更新日: 2025/07/04

Pythonのwhile文の使い方!無限ループとbreak・continueの活用

Pythonのwhile文の使い方!無限ループとbreak・continueの活用
Pythonのwhile文の使い方!無限ループとbreak・continueの活用

先生と生徒の会話形式で理解しよう

生徒

「Pythonで、ある条件が満たされるまで繰り返し処理する方法ってありますか?」

先生

「はい、そのときはwhile文を使います。条件がTrueのあいだ、ずっと処理を繰り返しますよ。」

生徒

「for文とはどう違うんですか?それと、無限ループって何ですか?」

先生

「その2つの違いや、breakcontinueの使い方も合わせて、やさしく説明していきましょう。」

-

1. while文とは?条件が真のあいだ繰り返す構文

1. while文とは?条件が真のあいだ繰り返す構文
1. while文とは?条件が真のあいだ繰り返す構文

while文は、「ある条件がTrue(真)である限り、処理を繰り返す」ための構文です。

次のように書きます。


count = 0
while count < 3:
    print("繰り返し中")
    count += 1

繰り返し中
繰り返し中
繰り返し中

この例ではcountが3より小さいあいだだけ繰り返し処理され、最後に止まります。

2. for文との違いを理解しよう

2. for文との違いを理解しよう
2. for文との違いを理解しよう

for文は「回数が決まっている繰り返し」に使うのに対し、while文は「いつ終わるか分からないけど、条件が満たされている間は繰り返したい」というときに使います。

たとえば、正しい答えが入力されるまで繰り返す処理などに便利です。

3. 無限ループとは?while Trueの使い方

3. 無限ループとは?while Trueの使い方
3. 無限ループとは?while Trueの使い方

条件がずっとTrueだと、繰り返しが止まらなくなります。これを無限ループといいます。

たとえば以下のコードは、強制的に終了するまでずっと繰り返されます。


while True:
    print("ずっと実行されます")

実際に使うときはbreak文で途中終了できるようにしておくことが重要です。

4. break文でループを途中で抜ける

4. break文でループを途中で抜ける
4. break文でループを途中で抜ける

break文は、条件に関係なくループから抜けるための命令です。

次の例では、「exit」と入力されたらループを抜けます。


while True:
    text = input("文字を入力(exitで終了):")
    if text == "exit":
        break
    print("入力された文字:", text)

文字を入力(exitで終了):hello
入力された文字: hello
文字を入力(exitで終了):exit
-

5. continue文で次のループへスキップ

5. continue文で次のループへスキップ
5. continue文で次のループへスキップ

continue文は、その回の処理だけをスキップして、次の繰り返しに進むために使います。

偶数だけをスキップして奇数だけ表示する例です。


num = 0
while num < 5:
    num += 1
    if num % 2 == 0:
        continue
    print(num)

1
3
5

6. 入力チェックでwhile文を活用しよう

6. 入力チェックでwhile文を活用しよう
6. 入力チェックでwhile文を活用しよう

while文は、正しい入力がされるまで繰り返すという用途にも向いています。

以下は、年齢が数字かどうか確認する処理です。


while True:
    age = input("年齢を入力してください:")
    if age.isdigit():
        break
    print("数字で入力してください")
print(f"あなたの年齢は {age}歳です")

年齢を入力してください:abc
数字で入力してください
年齢を入力してください:25
あなたの年齢は 25歳です

7. 無限ループの注意点と対策

7. 無限ループの注意点と対策
7. 無限ループの注意点と対策

無限ループは便利な反面、条件を書き間違えると処理が止まらなくなる危険があります。

次のようなコードは、countを増やし忘れているため、永遠に終わりません。


count = 0
while count < 5:
    print(count)
    # count += 1 を忘れてしまった!

実行すると止まらなくなってしまうので、ループの条件や変数の更新には注意しましょう。

8. while文でゲームっぽい処理も書ける

8. while文でゲームっぽい処理も書ける
8. while文でゲームっぽい処理も書ける

while文は「正解するまで繰り返す」といったゲーム的な処理にも使えます。

以下は簡単な数当てゲームの例です。


secret = "7"
while True:
    guess = input("1〜9の数字を当ててください:")
    if guess == secret:
        print("正解です!")
        break
    else:
        print("違います!もう一度!")

1〜9の数字を当ててください:3
違います!もう一度!
1〜9の数字を当ててください:7
正解です!
コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

カテゴリの一覧へ
新着記事
Pythonのエラーメッセージの読み方!よくあるエラーと解決方法
PHPの関数(function)の基本を完全ガイド!初心者でもわかる使い方
Pythonの条件式でNoneを判定する方法!is None vs == None の違い
Pythonのpass文とは?一時的なコードブロックをスキップする方法
人気記事
No.1
Java&Spring記事人気No1
PHPの配列をソートする方法!sort, rsort, asort, ksortの使い方を丁寧に解説します!
No.2
Java&Spring記事人気No2
PHPとは?初心者向けにわかりやすく解説
No.3
Java&Spring記事人気No3
PHPの関数(function)の基本を完全ガイド!初心者でもわかる使い方
No.4
Java&Spring記事人気No4
PHP の文字列の基本操作(連結・切り出し・長さ)の使い方
-