では 「while / for の比較版」 を、初心者向けに図解付きで “一瞬で違いがわかる” 形にまとめます。
教科書・講義資料としてそのまま使えるクオリティで作ります。
まず結論(超ざっくり)
- while …「条件が True の間くり返す」
- for ……「回数が決まっている / リストなどを順番に処理する」
1枚でわかる比較表
| 項目 | while文 |
|---|---|
| 仕組み | 条件がTrueの間、繰り返す 条件を書き続けるループ |
| よく使う場面 | 回数が決まっていない 例:正しい入力がくるまで待つ |
| 書き方 | while 条件: 繰り返す処理 条件を変化させる必要あり |
| 注意点 | 条件を変え忘れると無限ループ |
| break / cont. | よく使う(特にbreak) |
| 項目 | for文 |
|---|---|
| 仕組み | 値を1つずつ取り出して繰り返す 回数が自動で決まる |
| よく使う場面 | 回数が決まっている リスト・文字列を順に処理したい |
| 書き方 | for 変数 in 集合: 繰り返す処理 |
| 注意点 | 条件更新が不要で安全 |
| break / cont. | 同様に使える |
動きを図解で比較
while の流れ(条件ループ)
① 初期化(i = 1 など)
│
▼
② 条件をチェック
│ True
▼
③ 処理を実行
│
▼
④ 条件を更新(i += 1)
│
└──→②へ戻る
│ False
▼
⑤ 終了
for の流れ(値を順に処理)
① 集合(リストなど)を用意
② 最初の値を取り出す → 処理
③ 次の値を取り出す → 処理
④ すべての値を処理したら終了
例:for x in [10, 20, 30]
├─ x = 10 → 処理
├─ x = 20 → 処理
└─ x = 30 → 処理
(終わり)
実例で比較
while で1~5を表示
i = 1
while i <= 5:
print(i)
i += 1
Pythonfor で1~5を表示
for i in range(1, 6):
print(i)
Python→ 同じ結果だが、for のほうがシンプル!
どっちを使えばよい?
| 状況 | 使うべき |
|---|---|
| 回数が決まっている | for |
| リストを順番に処理したい | for |
| 条件が満たされるまで繰り返したい | while |
| ユーザー入力を監視する | while |
| 無限ループが必要 | while(+ break) |
最後に(初心者向けアドバイス)
- よくわからないときは for を使うのが基本
- 「条件がTrueのあいだ続けたい」ときだけ while を使う
これだけ覚えておけばOKです。
