for文との違いはwhileは条件が真の間に繰り返し続ける処理
目次
whileの使い方
whileはpython以外のプログラミング言語でも登場する繰り返し処理です。
例えばbashでもwhileはあります。
簡単な例 TRUEを指定して無限ループ
whileは条件式が真 TRUEの間中ずっと繰り返します。
import time
while True:
print("Hello, world!")
time.sleep(1)
Hello, world!
Hello, world!
Hello, world!
:
whileの後の条件式がTrue→常に真なので、実行すると1秒おきにずっとHello, World!を出力し続けます。
time.sleep(1)をいれないと、絶え間なく無限ループで出力するのでPCが落ちてしまうので注意です。
簡単な条件を入れてwhileで繰り返す
次にlimit_numという空の変数を用意して、実行のたびに1プラスしていき、それが10に達すると処理を終了するというのを書きます。
import time
limit_num = 0
while limit_num < 10:
print("Hello, world!")
limit_num += 1
time.sleep(0.01)
この出力結果は10回Hello worldが出力されてwhileが終了しています。
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
whileの部分をtrueにしてもbreakを使えば同じ処理ができます
while True:
print("Hello, world!")
limit_num += 1
time.sleep(0.01)
if limit_num > 10:
break
ユーザ入力を待ち受けるプログラムの作成
while trueにしてinputの内容をずっと待ち受けるプログラムなどを作成できます。
while True:
#ユーザからの入力を受け取る
input_str = input("exitを入力しないと終了しません。")
#入力された文字列が"exit"ならばループを抜ける
if input_str == "exit":
break
else:
print("exitを入力してください。")
実行結果
exitを入力しないと終了しません。aa
exitを入力してください。
exitを入力しないと終了しません。fds
exitを入力してください。
exitを入力しないと終了しません。exit
>