Python入門【while文の使い方(繰り返し)】

こんにちは、ミナトです。

「同じ処理を繰り返し実行するにはどうすればいいの?」

このような場合はfor文が利用できることを前回の記事で紹介しました。

for文を利用することでリストなどイテラブルなオブジェクトから一つずつ値を取り出して繰り返し処理を実行できます。

Python入門【for文の使い方(繰り返し)】

2021年6月18日

しかし、「xの値が10以下の場合、ループ処理を実行したい」など特定の条件に応じて繰り返し処理を行いたいという場合もあります。

そのような場合はwhile文を利用します。

今回はwhile分の使い方について分かりやすく解説します。

for文以外にループ処理を定義する方法はあるの?
Pythonにはwhile文というものがあるで!

while文を使えば、「xの値が10以下の場合、ループ処理を実行する」など特定の条件に応じて繰り返し処理を実行できるで!

今回はwhile分の使い方について分かりやすく解説するな😆

以下のような方を対象としています
  • Pythonで繰り返し処理を行う方法を知りたい
  • while文の使い方を知りたい
  • Pythonでプログラミングを学びたい

while文の使い方

while文の定義

while文を定義するには以下のように記述します。

while文の書き方

while 条件:
 ループ内で実行する処理ブロック

以下の例では変数iが10未満の場合に繰り返し処理を実行しています。
繰り返し処理の中でi += 1をしないと無限ループになるので注意してください。

i = 0
while i < 10:
    print(i)
    i += 1

## 出力
0
1
2
3
4
5
6
7
8
9

while文とbreak文

for文と同じようにwhile文でもbreakを利用することで、繰り返し処理を中断できます。

i = 0
while i < 10:
    print(i)
    if i == 5:
        print('処理を中断します')
        break
    i += 1

## 出力
0
1
2
3
4
5
処理を中断します

while文とcontinue文

while文ではcontinueを利用することで、繰り返し処理をスキップできます。

以下の例ではi = 5の時に処理をスキップしています。5の時のみiが出力されないことに注目してください。

i = 0
while i < 10:
    if i == 5:
        print('処理をスキップ')
        i += 1
        continue
    print(i)
    i += 1

## 出力
0
1
2
3
4
処理をスキップ
6
7
8
9

while文とelse文

for else文を定義すると全てのループが終わった後の処理を定義できます。

while else文の書き方

while 条件:
 ループ内で実行する処理ブロック
else:
 全てのループが終わった後の処理

i = 0
while i < 10:
    print(i)
    i += 1
else:
    print('ループ処理が終了しました')

## 出力
0
1
2
3
4
5
6
7
8
9
ループ処理が終了しました

while文とinput関数の使い方

続いて、while文とよく一緒に使われるinput関数の使い方を紹介します。

input関数を利用すると文字が入力できるようになります。

以下の例では、文字を入力して、Enterを押すと入力値が関数の戻り値となり変数iに渡されます。

iにYが入力されるまで、処理が繰り返され、入力を求められます。Yを入力してEnterを押すと繰り返し処理が中断され処理が終了します。

while True:
    i = input('Enter:')
    if i == 'Y':
        print('処理終了')
        break

まとめ

Pythonではfor文だけでなくwhile文を用いて繰り返しを定義できます。
以下while文の特徴です。

while文の特徴
  • 特定の条件に応じて繰り返し処理を実行できる
  • continueやbreakを使うことで、ループのスキップ、中断ができる
  • while else文を利用することで全てのループが終わった後の処理を定義できる

while文を用いた繰り返しはPythonでプログラミングを行う上で頻繁に利用しますので、使い方をしっかり覚えるようにしましょう。

最後まで読んでいただき、ありがとうございます。

この記事が、「面白いな」、「勉強になったな」という方は、ぜひ、SNSでシェアしていただけると嬉しいです。