カテゴリ: Python 更新日: 2025/12/24

Pythonの繰り返し処理でカウンターを使う方法!range()やenumerate()の活用法

Pythonの繰り返し処理でカウンターを使う方法!range()やenumerate()の活用法
Pythonの繰り返し処理でカウンターを使う方法!range()やenumerate()の活用法

先生と生徒の会話形式で理解しよう

生徒

「Pythonで繰り返し処理をするときに、回数を数える方法ってありますか?」

先生

「良いところに気づきましたね。繰り返し処理でカウンター(回数)を使いたいときは、range()enumerate()という便利な関数を使いますよ。」

生徒

「rangeとかenumerateってなんだか難しそう…。初心者でもわかるように教えてください!」

先生

「もちろん!それじゃあ、Pythonのカウンターの基本から、やさしく解説していきましょう。」

1. Pythonの繰り返し処理とは?

1. Pythonの繰り返し処理とは?
1. Pythonの繰り返し処理とは?

まずは、繰り返し処理とは何かを簡単に説明しましょう。繰り返し処理とは、同じ処理を何度も行いたいときに使う仕組みです。たとえば、「同じメッセージを5回表示したい」といった場面で使います。

Pythonでは、for文を使って繰り返し処理を行います。以下は基本の書き方です。


for 変数 in 繰り返したいもの:
    実行する処理

2. 繰り返しの回数を指定するrange()関数

2. 繰り返しの回数を指定するrange()関数
2. 繰り返しの回数を指定するrange()関数

カウンターを使って「何回繰り返すか」を決めたいときは、Pythonのrange()関数を使います。これは、連続した数字を自動で作り出す関数です。

たとえば、0から4までの数字を繰り返すには次のように書きます。


for i in range(5):
    print("これは", i, "回目のメッセージです")

このコードを実行すると、次のような出力が得られます。


これは 0 回目のメッセージです
これは 1 回目のメッセージです
これは 2 回目のメッセージです
これは 3 回目のメッセージです
これは 4 回目のメッセージです

このように、range(5)は、0から始まり4までの5つの数字を作り出してくれます。

3. range()の引数を変えるとどうなる?

3. range()の引数を変えるとどうなる?
3. range()の引数を変えるとどうなる?

range()には、スタートの数字やステップ(増える間隔)も指定できます。形式は以下のようになります。


range(スタート, ストップ, ステップ)

たとえば、1から10までを2ずつ増やすには次のように書きます。


for i in range(1, 11, 2):
    print(i)

1
3
5
7
9

このように、ステップを使えば間引きながら繰り返すことも可能です。

4. カウンターと一緒にデータを扱いたいときはenumerate()

4. カウンターと一緒にデータを扱いたいときはenumerate()
4. カウンターと一緒にデータを扱いたいときはenumerate()

繰り返しの中で、リストなどのデータとカウンターを同時に使いたいときに便利なのがenumerate()です。リストの中身を1つずつ取り出しながら、その番号(インデックス)も一緒に教えてくれます。


fruits = ["りんご", "みかん", "ぶどう"]

for i, fruit in enumerate(fruits):
    print(i, "番目の果物は", fruit)

0 番目の果物は りんご
1 番目の果物は みかん
2 番目の果物は ぶどう

このように、enumerate()を使うことで、番号付きでリストを処理できます。

5. 番号を1から始めたいとき

5. 番号を1から始めたいとき
5. 番号を1から始めたいとき

Pythonのenumerate()は通常、0からカウントが始まります。でも、「人間が数えるように1から始めたい」と思うこともありますよね。その場合は、enumerate()start引数を使いましょう。


for i, fruit in enumerate(fruits, start=1):
    print(i, "個目の果物は", fruit)

1 個目の果物は りんご
2 個目の果物は みかん
3 個目の果物は ぶどう

こうすれば、1からカウントする繰り返し処理が簡単にできます。

6. range()とenumerate()の違いを整理しよう

6. range()とenumerate()の違いを整理しよう
6. range()とenumerate()の違いを整理しよう

最後に、range()enumerate()の違いをまとめておきましょう。

  • range(): 回数を数えながら繰り返したいときに使う
  • enumerate(): リストの内容と一緒に番号も使いたいときに便利

使い分けのコツとしては、「ただ繰り返すだけならrange()」、「リストの中身も使いたいならenumerate()」と覚えるとわかりやすいです。

まとめ

まとめ
まとめ

Pythonのくりかえし処理におけるカウンターの使い方は、プログラムの動きを正確に管理するためにとても大切な考え方です。とくに、回数を明確にしながら処理を進めたい場面や、データの順番を知りながら処理したい場面では、今回学んだrange()enumerate()といった機能が大活躍します。Pythonはシンプルで直感的な文法を持つ言語ですが、こうした便利な関数を正しく理解して使い分けることで、コードの読みやすさと実行の正確さがぐんと向上していきます。 とくに、range()は数を自動で生成するという特徴があり、「何回くりかえすか」を自由に設定できます。スタート地点や終了地点、増える幅まで調整できるため、細かな条件を必要とする処理でも柔軟に対応できます。また、enumerate()はリストの中身を順番つきで扱う場面でかかせない関数で、データとインデックスを同時に取得できるため、処理の流れがとても理解しやすくなります。 Pythonのくりかえし処理では、単に動けば良いというだけでなく、読みやすく、整理されていて、あとからメンテナンスしやすいコードを書くことがとても重要です。そのためにも、range()やenumerate()が提供する便利なメリットを知り、実際のコードに自然に取り入れていくことは、大きな成長につながります。 さらに、カウンターの値を1から始めたいときの工夫や、データの内容に合わせて処理を最適化する方法など、実務でも役立つテクニックが含まれています。下のサンプルコードでは、range()とenumerate()を組み合わせ、くりかえし処理の基本から応用までを整理した例を掲載しています。日常的なデータ処理、ループを使ったチェック処理、画面表示の管理など、多くの場面で自然に応用できる内容です。

サンプルプログラム


fruits = ["りんご", "ばなな", "みかん", "ぶどう"]

print("▼ range() を使ったくりかえし")
for i in range(1, len(fruits) + 1):
    print(i, "こめの処理です")

print("▼ enumerate() を使って番号つきで果物を表示")
for index, fruit in enumerate(fruits, start=1):
    print(index, "ばんめのくだものは", fruit)

このように、Pythonのくりかえし処理の中でカウンターを活用する方法を理解しておくと、毎日のプログラミングがとても扱いやすくなり、コードの質も向上します。とくに、複雑なデータを扱うときや、画面に順番つきで表示したいときなど、実際のシステム開発でも欠かせない考え方です。くりかえし処理とカウンターの組み合わせは、Pythonの基礎力を高めるための大事な一歩と言えるでしょう。

先生と生徒の振り返り会話

生徒

「先生、range()とenumerate()のちがいがやっと分かってきました!同じくりかえし処理でも、それぞれ役わりがあるんですね。」

先生

「その気づきはとても良いですね。Pythonでは、状況に合わせて使い分けることで、より分かりやすいコードが書けるようになりますよ。」

生徒

「たしかに、ただ回数を数えたいだけならrange()だけでいいし、データと番号を同時に使うならenumerate()のほうが便利だと感じました。」

先生

「その通りです。くりかえし処理は毎日のように使うので、こうした基本をしっかり理解しておくと、自信を持ってコードを書けるようになりますよ。」

生徒

「今日はすごく勉強になりました!これからのPython学習でも、range()とenumerate()をたくさん活用してみます。」

先生

「良い心がけですね。これからも一緒に、読みやすくて丁寧なコードをめざして学んでいきましょう。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Pythonで繰り返し処理って何に使うの?初心者でも簡単に理解できる?

Pythonの繰り返し処理は、同じ処理を何度も実行したいときに使います。たとえば「5回メッセージを表示したい」といった場面です。初心者でもfor文を使えばシンプルに書けます。
カテゴリの一覧へ
新着記事
New1
Flask
Flaskのログレベル(DEBUG/INFO/WARNING/ERROR)を使い分ける方法を完全ガイド!
New2
Python
Pythonのfrozensetとは?ミュータブルなsetとの違いをわかりやすく解説
New3
Python
Pythonでセットを活用してデータをフィルタリングする方法!初心者でもわかるセットの基本と使い方
New4
Python
Pythonの辞書操作まとめ!初心者が知っておくべき便利ワザ集
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonの文字列から一部を抽出する方法!スライスを使った基本的な切り出し方
No.2
Java&Spring記事人気No2
Python
Pythonの文字列を1文字ずつ処理する方法!for文やlist化の活用例
No.3
Java&Spring記事人気No3
Flask
FlaskアプリのSECRET_KEYの設定方法を完全ガイド!初心者でもわかるセキュリティ対策
No.4
Java&Spring記事人気No4
Django
Djangoモデル入門|初心者が最初に知るべきORMの基本操作
No.5
Java&Spring記事人気No5
Flask
Flaskで非同期処理を成功させるベストプラクティス集|初心者でも失敗しない考え方
No.6
Java&Spring記事人気No6
Python
Pythonのリストを分割する方法を完全ガイド!初心者でもわかるスライス・split・itertoolsの使い方
No.7
Java&Spring記事人気No7
Flask
Flaskでデータベースを使う基本!SQLAlchemyの導入方法をやさしく解説
No.8
Java&Spring記事人気No8
Flask
Flaskのログをファイルに保存する方法!初心者でもわかる設定手順を徹底解説