(最終更新月:2022年11月)
✔当記事はこのような方に向けて書かれています
「whileを使うと何ができるのだろうか?」
「whileの使い方が知りたい」
「whilleを使った実例ってあるのかな?」
✔当記事を通じてお伝えすること
- whileについて
- whileの書き方
- whileの実例
当記事では、whileの基本的な使い方だけでなく、whileを使ったアプリのコード例までご覧いただけます。
ぜひ最後までご覧ください。
Pythonのwhileについて知っておくべきこと3選

こちらでは、Pythonのwhileについての基本的なことを解説していきます。
- whileの基本構成
- whileの仕組み
- whileが止まらなくなったら
whileの基本構成
whileの基本構成は以下のとおり。
while 条件:
条件が真のときの処理
上に続く...

ここでいう条件とは、if文のあとに続ける「True」「False」で判断できるもの。
例えば、「num == 1」など。
条件がTrueであるときのみ、while内の処理をおこないます。
whileの仕組み
whileの仕組みを見ていきます。
以下のコードをご覧ください。
>>> while num < 3:
... print(num)
... num += 1
...
0
1
2
コードの解説です。
- 【while num < 3:】numが3より少ないときのみ以下の処理をおこなう
- 【print(num)】numをprintする
- 【num += 1】numをひとつ増やす
whileが止まらなくなったときの対処法
whileが止まらなくなったときの対処法をお伝えします。
以下2種類のツールにおける方法です。
ターミナル
ターミナルで処理を止められない場合は、以下のキーを押します。
Ctrl + C
>>> import time
>>> while True:
... print("keep on running...")
... time.sleep(1)
...
keep on running...
keep on running...
keep on running...
keep on running...
keep on running...
^CTraceback (most recent call last):
File "<stdin>", line 3, in <module>
KeyboardInterrupt
jupyter notebook
jupyter notebookでは、以下をクリックします。

whileを使いこなすための方法2選

whileの応用として、以下の2点についても知っておきましょう。
- while…else文
- breakの活用
whileでできることの幅が広がります。
while…else文
else以下の処理は、条件式がFalseとなったときに一度だけ実行されます。
例は以下のとおり。
>>> i = 0
>>> while i <5:
... print(i)
... i += 1
... else:
... print("whileが終了しました")
...
0
1
2
3
4
whileが終了しました
breakの活用
breakを使うと、while文の途中でも、強制的に処理を終わらせられます。
例文は以下のとおり。
i = 0
while i < 10:
i += 1
if i == 3:
break
print(i)
変数iが3となったら、強制的にwhileループは終了します。
whileを使ったアプリ例

whileが使われた自作アプリのコードをご紹介します。
- タイピングゲーム
- じゃんけんゲーム
タイピングゲーム
タイピングゲームでwhileが使われているのは以下の部分。
validator = False
sentence = "何文字にチャレンジしますか?-> "
while not validator:
char_size = input(sentence)
try:
char_size = int(char_size)
if char_size <= 50:
validator = True
else:
sentence = "問題は50文字以内で入力下さい -> "
except:
sentence = "数値を入力下さい"
whileを使って、入力値に不正がないかを確認しています。
詳しくは以下の記事でどうぞ。
じゃんけんゲーム
じゃんけんゲームでは以下の部分で使われています。
while game_continue:
total_game += 1
main_program()
janken_continue() #じゃんけんをつづけるか
reset_for_nextgame()
else:
time.sleep(0.5)
print(f'あなたは{total_game}戦{your_wins}勝{total_game - your_wins}敗')
print("じゃんけんゲームを終了します")
time.sleep(5)
sys.exit()
while…else文を使って、ゲームを続ける場合と終了した場合を管理しています。
全コードはこちらで公開しています。
まとめ:Pythonのwhileは、構成さえ覚えれば使うのは簡単

当記事の内容をまとめます。
- whileは、ある条件下でのみ、処理を実行する
- whileの書き方は、構成を覚えれば簡単
whileを使って、一定の条件下でのみ処理を実行できます。
elseやbreakを活用して、更に高度なことも可能。
当記事の内容を使いこなして、whileをマスターしましょう。
✔当ブログは以下のような方に向けて書かれています
「Djangoでのアプリ開発を学びたい!」
「Djangoで開発したアプリをWebで公開するにはどうするの?」
✔当ブログ掲載の記事
- Djangoで作る日報アプリ開発
- WebアプリをWeb上に公開する方法
- Webアプリ開発に必要なそのほかの情報

ITCブログにご協力いただける方は、以下もご検討いただけると嬉しいです。