基礎データ分析

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

基本講座_for

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

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

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

この記事を書いた人

ふみと

ふみと

python for文の動作を図で理解

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

for文とは

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

for文の書き方は以下の通りで、オブジェクトから要素を順番に変数に代入し、要素の数だけ後続の処理を繰り返します。

python_for

上記の例だと、オブジェクトに[2,3,4]の3要素を含んだlist(リスト)を利用しています。

処理の流れは、1回目に変数iにリストの最初の要素2から順に代入し、インデント(字下げ)された一連の処理を実行します。

次に、2つ目の要素3が代入されます。最後の要素の処理が終了するまで繰り返されます。

どんな時に役に立つ

  • Excelファイルに対して同じ加工を何度も加える処理
    • 1つのExcelシートの大規模データを目的に応じた複数のExcelファイルに分割して出力
      【Excel操作+for文の応用】
  • 複数のWEBページから情報を収集する処理
    • WEBサイトの検索を繰り返して、商品ページや株価ページから情報を繰り返し取得する処理
      【WEBスクレイピング+for文の応用】

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

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

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

python for文:具体例(リスト)

a = 0
for i in [2,3,4]:
    a = a + i
    print(a)
2
5
9

解説

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

python for文:具体例(range関数)

for i in range(5):
    print(i)
0
1
2
3
4

解説

適当な範囲の値を生成し、繰り返し処理したい場合に利用。(利用頻度:低)

  • 先ほどのリストと同様に変数にrange(5)の要素を代入しています。
  • range(5)は[0,1,2,3,4]の0始まりの5個の要素を生成します。

python for文:具体例(range+len関数)

kyouka_list = ['国語','算数','理科','社会']
point_list = ['90点','70点','80点','60点']
for i in range(len(kyouka_list):
    print(kyouka_list[i])
    print(point_list[i])
国語
90点
算数
70点
理科
80点
社会
60点

解説

複数のlistオブジェクトと組み合わせて利用する。(利用頻度:高)

  • range(len(kyouka_list)) = [0,1,2,3]となり要素の順番(インデックス)を抽出することが可能。
  • 上記で取得した要素数を基に複数のlistオブジェクトからデータを抽出できる。

python for文:具体例(enumerate)

kyouka_list = ['国語','算数','理科','社会']
for i , n in enumerate(kyouka_list)):
    print(i)
    print(n)
0
国語
1
算数
2
理科
3
社会

解説

インデックスと要素を同時に取得したい場合に便利(利用頻度:中)

  • 最初の変数iには、インデックスが代入される。
  • 次の変数nには、要素が代入される。

python for文:具体例(zip)

kyouka_list = ['国語','算数','理科','社会']
point_list = ['90点','70点','80点','60点']
for i,n in zip(kyouka_list,point_list):
    print(i)
    print(n)
国語
90点
算数
70点
理科
80点
社会
60点

解説

複数のlistオブジェクトから要素を同時に取得したい場合に便利(利用頻度:中)

  • 最初の変数iには、先頭のkyouka_listの要素が代入される。
  • 次の変数nには、2個目のpoint_listの要素が代入される。

まとめ

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

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

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

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

スクールは費用も高いので、通うには事前に年収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教材発売中!

    -基礎データ分析