Address
304 North Cardinal St.
Dorchester Center, MA 02124

Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM

Pythonのwhile文の使い方

Pythonのwhile文の使い方と基本的な考え方

Pythonのwhile文の仕組みと考え方の基本をわかりやすく解説

Pythonのwhile文について、その使い方と基本的な考え方について解説します。

while文の文法

while文の基本的な文法は次のような形式をとります。

while 条件式:
    条件式が真(True)の場合の処理

では簡単な具体例を見ていきましょう。次の項目を見てください。

具体例

a=1

while a<10:
    a=a*2

print(a)

ものすごく単純なコードですが、上から順番に説明していきます。

a=1

まずは変数aに1を代入します。

while a<10:
    a=a*2

これは次のようなパーツ構成となっています。

条件式a<10
処理a=a*2

今、a=1ですが、これはa<10という条件を満たしますね。そこでまずこの条件式が評価されて真(True)が返ってきます(画面には出ませんが)。

そして真(True)の場合に、a=a*2という処理が開始されます。

具体的にaの値がどのように変化していくのかを書いていきます。

ステップ aの値 条件式 条件式の評価 処理 処理後のaの値
1(はじまり)11<10真(True)a=1*22
222<10真(True)a=2*24
344<10真(True)a=4*28
488<10真(True)a=8*216
51616<10偽(False)a=16*232

ご覧のとおり今回のコードは数学的にいえば「2の階乗」を作るコードです。2の1乗が1、2の2乗が4・・・という感じですね。

このステップ5(つまり5回目)の条件式の評価に着目してください。偽(False)になっていますね。これは「16」が「10」よりも大きくなってしまうからです。

この場合はwhile文は実行されません。したがって今回のwhile文は1~4までのステップ(回数)でその実行が止まります。

以上のことから、

print(a)

を実行すると、「16」という数字が画面に出力されます。下の画像はWindowsのコマンドプロンプト上で今回のコードを実行した結果です。ちゃんと16が出力されていますね。

pythonのwhile文をコマンドプロンプトで実行

愛を分かち合いましょう