Python初心者がwhile文の基礎をやってみます。
参考にしたURL:https://www.youtube.com/watch?v=nE5DTxksjHw、https://www.youtube.com/watch?v=AT6mn-JxATw
■実行環境
GoogleColaboratory(Python)
■while文をつかってみます
while文を使うと、特定の条件になるまで繰り返し処理を行うことができます。
■コード
time = 10 #timeが0よりも大きい while time>0: print('残り', time, '秒') time -= 1 print('タイムアップ')
このプログラムは、timeが10(10秒)という設定、while文を使い、timeが0よりも大きい場合は、残りtimeに出力し、出力されるものはtimeに-1された状態で出力される。timeが”0”(0秒)になった場合は、while文のtimeが0よりも大きいという条件が満たされなくなりますので、繰り返し処理が終了となり、「タイムアップ」と出力される。
■実行
プログラムを実行してみる。
実行してみると、残り何秒かを毎秒ごとに出力され、0秒になると繰り返し処理が終了し、「タイムアップ」が出力されたことが確認できた。
■注意した点
■コード
time = 10 #timeが0よりも大きい while time>0: print('残り', time, '秒') print('タイムアップ')
上記のコードでは、while文を使い、timeが0よりも大きい場合は、「timeに-1」するという処理がないので、永遠にtimeが0よりも大きい状態が繰り返し続くため、結果を永遠出力し続ける(無限ループ状態)。このような場合は、パソコンに負荷をかけてしまうので、注意が必要である。気が付いた時点でプログラムを終了させる。
■break文を使ってみる
while文とbreak文を組み合わせて使ってみます。break文を使うことで、for文やwhile文の繰り返し処理を終了させることができます。
■コード
i = 0 while True: i += 1 if i==10: break print(i)
iに0を入れた状態で、while文にTrue(条件を満たしている状態)を追加し、iを毎回+1していき、iが10になる条件がきた時に、break(繰り返し処理を終了、特定のところで処理を終了)させる。
■実行
プログラムを実行してみる。
実行してみると、iを毎回+1していき、iが10になる条件がきた時にbreak(繰り返し処理を終了、特定のところで処理を終了)となった。出力には10は表示されず、10になる条件がきた時に処理が終了したので、10は表示されない。
■continue文を使ってみる
次に、while文とcontinue文とbreak文を組み合わせて使ってみます。continue文を使うと、処理をスキップして次の処理を行うことができます。
■コード
i = 0 while True: i += 1 if i==10: continue elif i> 20: break print(i)
iに0を入れた状態で、while文にTrue(条件を満たしている状態)を追加し、iを毎回+1していき、iが10になる条件がきた時に、continue(スキップして次の処理)となる。さらにelifで他の条件を追加し、iが20よりも大きい場合は、break(繰り返し処理を終了、特定のところで処理を終了)させる。
■実行
プログラムを実行してみる。
実行してみると、iを毎回+1していき、iが10になる条件がきた時に、10がcontinue(スキップして次の処理)されて、次の処理が開始となった。さらにiが20よりも大きい条件がきた時に、break(繰り返し処理を終了、特定のところで処理を終了)となることが確認できた。
コメント