Python 繰り返し処理を行う! for文やrange、continue、break等詳しく解説【初心者】

Python 繰り返し処理を行う

プログラミングをしていく上での基本構造は「順次進行」「条件分岐」「繰り返し」の3つになります。
「Python プログラミングを始めよう!」のセッションのところで詳しく解説していますので、よく分からない方は、ご覧になって理解を深めてください。

今回は「繰り返し」の処理について解説します。

目次

繰り返し処理とは

ライティングボード

繰り返し処理とは

繰り返し処理とは、決まった回数や条件を満たしていることで、同じ処理を実行するプログラム構造のことをいいます。

for文

ライティングボード

for文

繰り返し処理では基本的に「for文」を使っていくことになります。

「for文」は、条件を満たしている間は同じ処理を繰り返します。
そして、条件を満たさなくなったときに繰り返し処理が終了します。

「for文」を使うと、1から100までの数字を順番に出力したり、配列の要素を順番に取り出したりすることが可能になります。

for文の書き方

for文の書き方は、

for (変数) in range(繰り返し回数):
(繰り返し実行する処理)

for文では、変数の後ろに「in」を付けて、そのあと(今回は、range関数)を入れて、その後ろの括弧の中に、繰り返しの回数を入れ「コロン」を付けます。
そして改行し、インデントをしてから、繰り返し実行する処理を書きます。

「for文」では、定義した変数のことをカウンタ変数といって、繰り返し処理をカウンタ変数によって制御します。
カウンタ変数は、英語の「index」「Iterator」の頭文字「 i 」が使われることが多いようです。

for文 (例)

(例1)for文を使って「0~5」までの数字を表示させます。

  • 変数を「i」に設定します。
  • range関数」を使うと連続する整数を作成することができます。
  • 同じ処理を6回繰り返すことで数字を表示させます。
for i in range(6):
  print(i)

# 実行結果:
0
1
2
3
4
5

(例2)for文を使って「5~10」までの数字を表示させます。

  • 変数を「i」に設定します。
  • 「range関数」を使うと連続する整数を作成することができます。
  • range(繰り返し回数)を(5, 11)に指定することで「5~10」の数字を表示できます。
for i in range(5, 11):
  print(i)

# 実行結果:
5
6
7
8
9
10

(例3)for文を使って「0、3、6、9」という数字を表示させます。

  • 変数を「i」に設定します。
  • 「range関数」を使うと連続する整数を作成することができます。
  • range(繰り返し回数)を(0, 10, 3)に指定することで「0以上10未満の数字の中で、3ずつ増加させることができます。
for i in range(0, 10, 3):
  print(i)

# 実行結果:
0
3
6
9

(例4)for文を使って配列を表示させます。

  • wordsという配列を使います。
  • 配列を使って、繰り返す回数を指定していることになります。
  • 変数を「w」に設定します。
words = ['英語', '日本語', '中国語']

for w in words:
  print (w)

# 実行結果:
英語
日本語
中国

break文

ライティングボード

break文

break文とは、ある条件にあてはまったときに、繰り返し処理を終了させることができます。

break文 書き方

break文の書き方は、
for (変数) in range(繰り返し回数):
 if (変数)(処理を止める条件)
   break
(繰り返し実行する処理)

break文 例

(例5)for文を使って「0~9」までの数字を表示させますが「0~5」までで止めます。

  • 変数を「i」に設定します。
  • 「range関数」を使うと連続する整数を作成することができます。
  • 同じ処理を10回繰り返すことで数字を表示させます。
  • break文を使って( if i == 5:)とし、繰り返しを「0~5」までで止めます。
for i in range(10):
  if i == 5:
    break
print(i)

# 実行結果:
0
1
2
3
4
5

continue文

ライティングボード

continue文

continue文とは、繰り返し処理の中で、ある条件に当てはまるときに、その処理をスキップさせることができます。

continue文 書き方

continue文の書き方は、
for (変数) in range(繰り返し回数):
 if (変数)(処理をスキップさせる条件)
   continue
(繰り返し実行する処理)

continue文 (例)

(例6)for文を使って「0~5」までの数字を表示させますが「4」をスキップさせます。

  • 変数を「i」に設定します。
  • 「range関数」を使うと連続する整数を作成することができます。
  • 同じ処理を6回繰り返すことで数字を表示させます。
  • continue文を使って( if i == 4:)とし、「4」のみをスキップさせます。
for i in range(6):
  if i == 4:
    continue
print(i)

# 実行結果:
0
1
2
3
5

(例7)for文を使って「2~9」までの数字を偶数と奇数の判定をさせます。

  • 変数を「i」に設定します。
  • 「range関数」を使うと連続する整数を作成することができます。
  • ( if i % 2 == 0:)とすることで「2」で割って余りが「0」になるものを偶数として出力します。
  • continueを使って (“奇数”, i)とし、スキップさせたものを奇数として出力させます。
for i in range(2, 10):
  if i % 2 == 0:
  print("偶数", i)
    continue
  print("奇数", i)

# 実行結果:
偶数 2
奇数 3
偶数 4
奇数 5
偶数 6
奇数 7
偶数 8
奇数 9

for文のネスト

ライティングボード

for文のネスト

「for文」の中に、さらに「for文」を入れることができます。

同じ種類のものをさらに中に入れていく構造のことを「ネスト」といって、
「for文」の中に「for文」を入れることを「for文のネスト」といいます。

for文のネスト書き方

for文のネストの書き方は、

for (変数A)in range(繰り返す回数):
 for(変数B)in range(繰り返す回数)::

外側の繰り返しのカウンタ変数を(変数A)内側の繰り返しのカウンタ変数を(変数B)としたときに、(変数B)のループがら回り、1周すると、(変数A)が1つ動き、
そのあと(変数B)のループが回り、1周すると、(変数A)がさらに1つ動くという流れになります。

for文のネスト (例)

(例7)for文のネストを使って(変数A)「0~4」と(変数B)「0~4」までの数字を繰り返し処理をさせます。

  • 変数を「A」と「B」に設定します。
  • 「range関数」を使うと連続する整数を作成することができます。
  • それぞれの変数の繰り返しを「range(5)」とすることで「0~4」までを表示させます。
  • 出力をするときに「print(A, B, sep=”-“)」とすることで、それぞれの変数の間に「-」を付けて数字を分けます。
for A in range(5):
  for B in range(5):
    print(A, B, sep="-")

# 実行結果:
0-0
0-1
0-2
0-3
0-4
1-0
1-1
1-2
1-3
1-4
2-0
2-1
2-2
2-3
2-4
3-0
3-1
3-2
3-3
3-4
4-0
4-1
4-2
4-3
4-4

for文 実用例

ライティングボード

for文 実用例

for文でリスト内を参照させる

for文でリスト内を参照させることもできます。

(例8)for文を使ってリスト内を参照させます。

  • リスト変数(X)を定義し「0」に設定します。
  • 変数’(i)を設定しリスト内を参照させます。
X = [1, 2, 3, 4, 5]
  for i in X:
    print(i)

# 実行結果:
1
2
3
4
5

for文でリスト内を足し算させる

for文でリスト内を足し算させることもできます。

(例9)for文を使ってリスト内を足し算させます。

  • 変数(sum)という変数を定義します。
  • 「sum += i」とすることでリスト内を足し算させます。
X = [1, 2, 3, 4, 5]
sum = 0

for i in X:
  sum += i
print(sum)

# 実行結果: 15
よかったらシェアしてください!
目次