for文の使い方
Pythonプログラミングで「繰り返し」に使う「for」の構文について、例文を用いてまとめた記事になります。
目次
- よく使われる構文
- 構文の使用例
- 繰り返し条件について
よく使われる構文
- for文
「繰り返し」文の基礎となる。繰り返し条件を満足しているうちは繰り返し処理を続ける。 - break文
繰り返し条件とは別に繰り返し処理を終了させる条件を設定し、条件を満たしたときに「break」を入れることで繰返しを終了する。 - continue文
条件を設定して、ある条件にあてはまったときにその繰り返し処理をスキップする。 - for文のネスト
for文の中にfor文が入っている構造をいう
構文の使用例
for文
rangeの因数に3を入れることで、「0、1,2」と順番に 「i」に代入していくプログラム。繰り返し回数はrangeの因数にした3回となる。
1 2 3 4 5 6 7 8 |
for i in range(3): print(i) ###出力内容##################### 0 1 2 ############################### |
break文
if文で「i」が「2」になったときの処理に「break」を入れることで、その条件時に繰り返しのループから外れるプログラム。
1 2 3 4 5 6 7 8 9 |
for i in range(3): if i == 2: break print(i) ###出力内容##################### 0 1 ############################### |
continue文
if文で「i」が「1」になったときの処理に「continue」を入れることで、その条件時の繰り返し処理をスキップする。
1 2 3 4 5 6 7 8 9 |
for i in range(3): if i == 1: continue print(i) ###出力内容##################### 0 2 ############################### |
for文のネスト
「0、1,2」と順番に 「i」に代入していく中で、iの処理の中に「0、1,2」と順番に「j」に代入していくプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
for i in range(3): for j in range(3): print(i,"-",j) ###出力内容##################### 0 - 0 0 - 1 0 - 2 1 - 0 1 - 1 1 - 2 2 - 0 2 - 1 2 - 2 ############################### |
繰り返し条件について
range関数
指定した初期値/最終値/差分で計算される数列(等差数列)を得ることができます。因数の順番は「range(初期値,最終値,差分)」になります。初期値と差分は因数を指定しなくても使えます。初期値の因数が未指示の場合は「0」 差分の因数が未指示の場合は「1」となります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# 0~9の範囲の昇順 i = range(10) print(list(i)) ###出力内容##################### [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] ############################### # 3~9の範囲の昇順 i = range(3,10) print(list(i)) ###出力内容##################### [3, 4, 5, 6, 7, 8, 9] ############################### # 0~9の範囲の偶数 (初期値2、最終値9、差分2の数列) i = range(2,10,2) print(list(i)) ###出力内容##################### [2, 4, 6, 8] ############################### # 0~9の範囲の奇数 (初期値1、最終値9、差分2の数列) i = range(1,10,2) print(list(i)) ###出力内容##################### [1, 3, 5, 7, 9] ############################### # 0~9の範囲の降順 i = range(10, -1, -1) print(list(i)) ###出力内容##################### [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0] ############################### |
list型で指定したない方の繰り返し処理
listを作ることで数列だけでなく文字列もfor文の変数に代入することができます。
1 2 3 4 5 6 7 8 9 10 |
list01 = ["佐藤","鈴木","田中"] for i in range(3): print(list01[i]) ###出力内容##################### 佐藤 鈴木 田中 ############################### |
listの中身をrange関数を使って変数「i」に代入していくこともできます。佐藤、鈴木、田中の3要素を出力する場合、range関数の(最終値の)因数を「3」にしますが、len関数を使えばlistの要素数が変わっても対応できるようになります。len関数は引数にしたオブジェクトの要素の数を出力します。
1 2 3 4 5 6 7 8 9 10 |
list01 = ["佐藤","鈴木","田中"] for i in range(len(list01)): print(list01[i]) ###出力内容##################### 佐藤 鈴木 田中 ############################### |