基礎データ分析

Python|while文を使った繰り返し処理【頻出パターン網羅】

基礎講座_while

今回はwhile文を使った繰り返し処理を解説していきます!

この記事では、基本的な利用方法からよくあるケースでのwhile文の活用を紹介し、while文をマスターできるまで徹底的に解説しています。

教科書的な説明というよりは、実利用で動くプログラムであることを優先し解説していきます!

この記事を書いた人

ふみと

ふみと

python while文の動作を図で理解

早速ですが、以下がfor文の説明です。

while文とは

ある処理を繰り返し実行したいときに利用する構文 ※繰り返したい回数が決まっていない

while文の書き方は以下の通りで、条件式を満たす限り永遠に後続の処理を繰り返します。

python_while

上記の例だと、wihle分の条件式にa<2を利用しています。

処理の流れは、1回目は条件(a < 2)を満たすので処理を実行します。(aは1に更新)

次に、2回目も条件(a < 2)を満たすので処理を実行します。(aは2に更新)

3回目の段階で、aは2に更新されているので条件を満たさず処理は終了します。

どんな時に役に立つ

  • 特定の条件が続いている限りは続行をするようなRPAや計算などの処理

while文の基本的な利用方法は以上です。

ここから先は、よく利用されるwhile文のパターンを紹介していきます!

実際に作りたいプログラムがあるときにしか、活用方法は分からないものなので関数と組み合わせることでこんなことができるのか。程度に理解ください
※while文の理解を促進するためのもので、暗記する必要はないです。

python while文:具体例(条件式の種類)

while文を利用する際に条件式を記載しますが、汎用的な演算子を紹介します!

比較演算子役割
==両辺の値が等しい
!=両辺の値が等しくない
>左辺の値が大きい
>=左辺の値が右辺の値以上
<左辺の値が小さい
<=左辺の値が右辺の値以下
論理演算子役割
and両方の条件式にあてはまる
orどちらか一方の条件式にあてはまる

解説

while文の条件式でよく利用する演算子です。
この後説明する実際のコードを使いながら動作を確認しましょう!

python while文:具体例(演算子の活用)

a = 0
while a < 2:
    print(a)
    a = a + 1
0
1

解説

先ほど説明した繰り返し処理のコードです。実行してみましょう!

python while文:具体例(if)

a = 0
while a < 10:
    a = a + 1
    if a % 2 == 0:
        print(str(a) + "は偶数")
    else:
        print(str(a) + "は奇数")
1は奇数
2は偶数
3は奇数
4は偶数
5は奇数
6は偶数
7は奇数
8は偶数
9は奇数
10は偶数

解説

特定の条件下で繰り返しと条件分岐処理をしたい場合に利用。(利用頻度:高)

  • a < 10である限り処理が繰り返し実行される。(aは繰り返しごとに1をカウントアップ)
  • aの値が2で割り切れる方によってif文で、奇数か偶数かを判定している。

python while文:具体例(if+break)

a = 0
while a < 10: 
    a = a + 1
    if a % 5 == 0:
        break
    print(a)
1
2
3
4

解説

繰り返し処理条件の中で、さらに特定の条件を満たす場合処理を中止したい場合に利用。(利用頻度:低)

  • 先ほどの例の処理の中で、aが5の倍数になったタイミングで処理を中断している。

python while文:具体例(if+continue)

a = 0
while a < 10: 
    a = a + 1
    if a % 5 == 0:
        continue
    print(a)
1
2
3
4
6
7
8
9

解説

繰り返し処理条件の中で、さらに特定の条件を満たす場合のみ処理をスキップしたい場合に利用。(利用頻度:低)

  • 先ほどの例の処理の中で、aが5の倍数になったタイミングのみ処理をスキップしている。

python while文:注意すべき無限ループ

a = 0
while a == 0:
    a = a
    print(a)
0
0
0
....無限に処理が続く

解説

ほとんどはコードミスによって誤って発生する。意図的に実装するのは稀なケース。(利用頻度:低)

  • a = 0の初期値がwhile分の中で更新されないため、永久に処理が実行される。
    ※パソコンもCPUやメモリを消費する。

まとめ

while文の理解は進みましたでしょうか?

プログラミング学習は、とにかく手を動かしてプログラム開発経験を積み上げることが重要です。

とはいえ題材や課題がないと勉強をすることも難しいと思います。

そういった方はプログラミングスクールに通い、用意されたケーススタディで学習を進めるのがオススメです。

スクールは費用も高いので、通うには事前に年収upや副業を始めるなどの投資回収する目的を立ててからにしましょう!

データ分析で生計を立てるためのロードマップも公開しているので、是非併せてご覧ください。

オンラインスクール
【完全版】Python習得のロードマップ|初心者プログラミング知識0から年収800万円へ

年収上げたいけど、プログラマって稼げるの? プログラマって知識0からでもなれるの? という質問をもらいますが、「Python」と「データ分析」を武器にすれば6ヶ月で年収800万円以上を狙うことは十分可 ...

最近のコメント

    • この記事を書いた人
    • 最新記事

    ふみと

    このブログでは、データサイエンティストとして市場価値を上げる方法を独自にまとめて発信しています。 もし記事を気に入っていただけたらサイトをブックマークもしくは、Twitterをフォローお願いします! 【経歴】
    日系大手企業勤務
    データサイエンティスト歴:7年
    【保有資格】
    JDLA E資格 , Advancesd Marketer , ビジネス統計スペシャリスト , 統計検定2級 , TOEIC 805点
    【スキル】
    Python/Tableau/SQL/HTML/CSS/機械学習/Deep Learning/RPA

    著書

    Pythonの独学専用pdf教材発売中!

    -基礎データ分析