Python while文とdo…while文にあたる書き方

Pythonのwhile文とdo…while文にあたる書き方のサンプルです。

目次

サンプル while文
  while文でelseを使用する
  breakを使用する
  continueを使用する
  do...while文にあたる書き方
演算子 比較演算子

while文

while 条件:
       実行される処理
  • 条件がtrueの間、処理を繰り返します。
  • 最初の条件の判定でfalseの場合、ループは1回も実行されません。
  • 処理に、条件をfalseにするロジックがないと無限ループになるので注意が必要です。
  • 以下はPythonの公式ドキュメントのwhile文のリンクです。
    https://docs.python.jp/3/reference/compound_stmts.html?highlight=if#while

while文のサンプルです。

# coding: utf-8

a = 0

while a < 5:
	print(a) # 0,1,2,3,4が出力される
	a += 1

5行目は値が5より小さい間、処理を繰り返します。
条件(a < 5)のあとにコロン(:)をつけます。

while文でelseを使用する

elseはwhileのループ処理が終わった後に実行されます。

# coding: utf-8

a = 0

while a < 5:
	print(a) # 0,1,2,3,4が出力される
	a += 1
else:
	print("次は5") # 次は5が出力される

8行目は、elseです。5行目の条件(a < 5)がfalseになった時に9行目が実行されます。
while文の中にbreakがありそのbreakでwhile文を抜けた場合、else配下は実行されません。

breakを使用する

while文でbreakを使用するサンプルです。

# coding: utf-8

a = 0

while a < 5:
	if a == 3:
		break
	print(a) # 0 1 2が出力される
	a += 1

print("end") # endが出力される

7行目のbreakは、while文を抜けます。
aの値が3のときwhile文を抜け次に「end」が表示されます。

continueを使用する

while文でcontinueを使用するサンプルです。

# coding: utf-8

a = 0

while a < 5:
	if a == 3:
		a += 1
		continue
	print(a) # 0 1 2 4が出力される
	a += 1

print("end") # endが出力される

8行目にcontinueがあります。aの値が3のとき9行目にはいかず、ループ処理の先頭の5行目に戻ります。
このサンプルでは7行目の加算がないと無限ループになるので注意して下さい。

do...while文にあたる書き方

while True:
       実行される処理
       if 条件:
            break
  • JavaやJavaScriptなどにあるdo...while文にあたる書き方です。必ず1回は処理が実行されます。
  • while True:として、無限ループさせます。
  • if文で条件を判定してbreakで処理を終了します。

do...while文にあたる書き方のサンプルです。

# coding: utf-8
a = 0

while True:
	print(a) #0 1 2 4 5が出力される
	a += 1
	if a > 5:
		break

4行目は、while Trueで最初の1回は必ず実行するようにします。
6行目は、ループの変数を1加算しています。
7行目の条件がtrueになったときに8行目のbreakでwhile文を抜けます。

比較演算子

上記コードの>は比較演算子です。
以下は、Pythonの比較演算子の一覧です。
Pythonに===はありません。

比較演算子 説明
a == b aとbの値は等しい
a != b aとbの値は等しくない
a > b aはbより大きい
a >= b aはbより大きい または 等しい
a < b aはbより小さい
a <= b aはbより小さい または 等しい

関連の記事

Python if文のサンプル
Python for文のサンプル(break/continue)

△上に戻る