【Python】繰り返し処理の基本と利用例を理解する(while文で条件に一致したデータを取得する)

繰り返し処理について、第二弾です。

前回はfor文で繰り返し処理を記述して、DB内のデータを取得する。ということを実践してみました。

今回は、while文を用いて、条件に一致したデータを取得することをテーマにしていきたいと思います。

そもそも、for文とwhile文、一見どちらも同じ結果を得られそうですが、何が違うのか?
あるいは、どういった使い分けが適切なのか?に着目していきたいと思います。

目次

while文と、for文の違い

while文も、for文と同じように同じ処理を繰り返し実行するための構文です。

同じ処理を繰り返す。ということは同じなのですが、処理の内容は全く違ったものになります。

for文は、指定された回数だけ処理を繰り返す。という目的で利用されます。

一方while文は条件式を記述し、その条件が成立している場合に処理を繰り返し、成立しなくなった場合は処理が終了します。繰り返しの回数は決まっていません。

Pythonでwhile文を使用するときの書き方

動作確認の前になんですが、前回の記事で作成したDBやPythonファイルの階層はまた利用します。

もし、ローカルの環境で作成して利用したい。という方は、こちらも再度ご覧ください。

動作確認の前提について

以下のリンクから、ジャンプできます!

【Python】Vscode+ターミナルで開発をする基本ステップ

2022年10月5日

基本構文とサンプルコード

それでは、基本的な構文とサンプルコードをご紹介します!

while 条件式 :
    条件がTrueの時の処理内容
禄太
while直後に条件式を記述し、その条件に当てはまる場合に処理したい内容をwhile以下に記述します。
インデントを入れるのを忘れないようにしてください。

以下、前回作成したDBからwhile文でデータを取得する、サンプルコードです!

# coding: utf-8
import sqlite3

conn = sqlite3.connect('TEST_for.sqlite3')
cur = conn.cursor()

cur.execute("select * from clothes")


######変数(count_ID)に、0を代入する######
count_ID = 0

#####while文の条件として、count_IDが、「上限 = 3」になるまで処理を繰り返す#####
while count_ID < 3 :

    count_ID +=1    #1ずつカウントアップする

    result = cur.fetchone()  #fetchoneで一件ずつデータを取得する

    if result is None :  #値がなくなるとfetchoneの結果はNULL値のNoneになります。
        break            #Noneになった時点でbreakします。
    print(result)

conn.close()

break文やif分については別途記事を作成します。
毎度、すみません、、、。

実行結果

禄太
実行すると、count_IDが一つずつカウントアップされ、最終的に3つ目の行で終わりました。!

「count_ID」の値は初めは「0」が代入されています。しかし、whileを実行すると、1ずつ増えていくため。以下のように増えていきます。

  • 「0(count_ID) < 3(条件)」
  • 「1(count_ID) < 3(条件)」
  • 「2(count_ID) < 3(条件)」

最終的に、「3 < 3」という条件式に変化していきますが、その時に条件式が不一致(False)になるため、繰り返し処理が終了します。

EOF

for文・while文ともに、繰り返し処理をする構文ですが、利用目的に違いがあること記載しました。

構文の記載方法や、実際の動作もあわせてご参考になさってください。

本日も、一緒に勉強にお付き合いいただき、ありがとうございました!

追伸:これからPythonを学ぶなら

これからPythonを学びたい!業務に活かせるように学習したい!という方ならば、まずはUdemyで学習を始めることをお勧めします。

Udemyでは、数多くの講師陣がITの知識やスキルアップのための解説動画を提供していて、現場でも役立つ知識が多数存在します。

禄太
私も、Udemyで学習しながらITのスキルを身につけ、仕事に役立てています。

特に、流行りもあるのだと思いますがPythonやAWSの講座は数が多く品質が高いものが多いです。

手前味噌ながら以下の記事で、主に初学者の方向けのお勧め講座のレビューをしていますので、ご参考にしていただけますと幸甚です。

脱初学者!!Udemy講座で徹底的に基礎を学んだので各講座のレビュー

2023年11月25日