Python While ループ文
Python プログラミングでは、while 文はプログラムをループ実行するために使用されます。つまり、ある条件の下で、特定のプログラムを繰り返し実行し、繰り返し処理が必要な同じタスクを処理します。その基本的な形式は次のとおりです:
while 判断条件(condition):
执行语句(statements)……
実行文は単一の文または文ブロックにすることができます。判断条件は任意の式にすることができ、ゼロ以外または非空(null)の値はすべて true になります。
判断条件が false の場合、ループは終了します。
実行フローチャートは次のとおりです:

Gif デモ Python while 文の実行プロセス

もう少し複雑な例:

サンプル
#!/usr/bin/python
count = 0
while (count < 9):
print 'The count is:', count
count = count + 1
print "Good bye!"
サンプルを実行 »
上記のコードを実行した出力結果:
The count is: 0 The count is: 1 The count is: 2 The count is: 3 The count is: 4 The count is: 5 The count is: 6 The count is: 7 The count is: 8 Good bye!
while 文には、ループをスキップするためのもう2つの重要なコマンド continue と break があります。continue は今回のループをスキップするために使用され、break はループを終了するために使用されます。さらに「判断条件」は定数値にすることもでき、ループが必ず成立することを示します。具体的な用法は次のとおりです:
# continue と break の使い方
i = 1
while i < 10:
i += 1
if i%2 > 0: # 偶数でない場合は出力をスキップ
continue
print i # 偶数 2、4、6、8、10 を出力
i = 1
while 1: # ループ条件が 1 のため必ず成立
print i # 1〜10 を出力
i += 1
if i > 10: # i が 10 より大きい場合はループを終了
break
無限ループ
条件判断文が常に true の場合、ループは無限に実行され続けます。次の例のとおりです:
サンプル
#!/usr/bin/python
# -*- coding: UTF-8 -*-
var = 1
while var == 1 : # この条件は常に true のため、ループは無限に実行されます
num = raw_input("Enter a number :")
print "You entered: ", num
print "Good bye!"
上記のサンプルの出力結果:
Enter a number :20
You entered: 20
Enter a number :29
You entered: 29
Enter a number :3
You entered: 3
Enter a number between :Traceback (most recent call last):
File "test.py", line 5, in <module>
num = raw_input("Enter a number :")
KeyboardInterrupt
注意:上記の無限ループは、CTRL+C で中断できます。
ループでの else 文の使用
Python では、while … else はループ条件が false のときに else 文ブロックを実行します:
サンプル
#!/usr/bin/python
count = 0
while count < 5:
print count, " is less than 5"
count = count + 1
else:
print count, " is not less than 5"
上記のサンプルの出力結果は次のとおりです:
0 is less than 5 1 is less than 5 2 is less than 5 3 is less than 5 4 is less than 5 5 is not less than 5
単純な文のグループ
if 文の構文と同様に、while ループ本体に1つの文しかない場合は、その文を while と同じ行に書くことができます。次のように:
サンプル
#!/usr/bin/python
flag = 1
while (flag): print 'Given flag is really true!'
print "Good bye!"
注意:上記の無限ループは、CTRL+C を使用してCTRL+C中断できます。
その他の拡張