Python講座:for文の使い方と活用方法~第6章~


Python
投稿日:
Python講座:for文の使い方と活用方法~第6章~
Tag: Python

今回はPython講座第6章としてfor文の解説をしていきたいと思います。

このfor文って何なのかっていうと、、

繰り返しのプログラム

になります。

内容としては

・rangeを使用して指定回数繰り返す処理をする

・リストでfor文を使用する

・辞書でfor文を使用する

という流れでやっていきます。

rangeの使い方

最初はrangeを使用して繰り返しの処理をやっていきます。

コードはこちらです。

コード: python
for i in range(5):
    print(i)
print('プログラムが終了しました')

ここで1つ用語を覚えてほしいのですが、、

インデント

この用語を覚えてくださいね。

インデントが何かというと、

文の最初の部分に空白を挿入する機能や行為

この事をインデントと言います。

なんでこの用語を覚えるのかというと、Pythonではインデントがめちゃくちゃ重要です。

というのもコード内でfor文を作成しているわけですが、、

そのfor文で実行しているプログラムはインデントされているのが分かると思います。

上でいう2行目のprint(i)の部分ですね。

だけど3行目のprint(‘プログラムが終了しました’)の部分にはインデントがないですよね。

こうやってPythonではインデントを付けることで、どこからどこまでが繰り返し処理をするのかをプログラムが分かるようにしているわけです。

rangeの解説

実際にプログラムの解説をしていきますね。

コード: python
for i in range(5):
    print(i)
print('プログラムが終了しました')

まずはfor文の書き方ですね。

rangeを使用する場合には、、

コード: python
for 変数 in range(繰り返しの回数):

というので書いていきます。

忘れがちな部分としては最後に『:』(コロン)を付ける所ですね。

でっ、forのあとに変数があるのですが、この変数がなんで必要なのかっていうと、、

そこに値を入れていくんですね。

今回のプログラムではrange(5)って書いてあるのですが、、

range(5)っていうのは、、

5回繰り返します

というよりも詳しく解説すると

0から4の数字を順番に変数に入れて繰り返し処理をしてください

という処理になっています。

0から4って5回の繰り返しですよね。

その値を順番にこの変数のところに入れていきますよっていうのが

コード: python
for i in range(5):

というものになるんですね。

でっ、そのあとにprint(i)というのをインデントを付けて書いています。

これは上でも話しているように、繰り返しの処理としてどういったことをやるかの内容です。

なのでプログラムを動かすと、、

5回繰り返すprint(i)の結果としてiに代入された値である、0~4が出力される。

そうしたらfor文が終了して、最後のprint文で「プログラムが終了します」という文字が出力されるということですね。

●for文の重要ポイント

『:』で終わらせる

処理はインデントをする

rangeの別の使い方

こんな感じでfor文でrangeを使用したのですが、、

少しrangeの複雑な使い方をしたいと思います。

さっきだったらrange(5)として単純に5回繰り返すという処理をしました。

でもrangeにはこういった書き方もあるんですね。

コード: python
for x in range(1,6):
    print(x)
print('プログラムが終了しました')

さっきと何が違うのかと言ったらrangeの後の数字ですね。

range(1,6)っていうふうに書いてありますね。

これが何なのかっていうと、、

さっきだったらrange(5)で5回繰り返します。

0~4という値を変数に代入していったわけですよね。

でも例えばこれを0からじゃなくて指定の数字から指定の数字まで繰り返したい場合って多いです。

その時に使用するのがこの

コード: python
range(1, 6)

という書き方です。

でっ、この『,』で区切った左側の数字ですね。

これが開始する数字になります。

でっ、処理としては左側の数字から始まって右側の数字まで繰り返す、、

というのは間違いです。

これはプログラムの処理の部分なのですが、0というのが最初の値になります。

そのため右側の数字を-1にした数まで繰り返すという処理になります。

  • 左側:開始する数字
  • 右側-1:終了する数字

ちょっとややこしいのですが、こう覚えてくださいね。

ということでこのプログラムを実際に動かすと、、

1、2、3、4、5という数字が出力される。

最後にプログラムが終了しましたという文字が出力されるという動きになります。

という感じでfor文でrangeを使用して繰り返しの処理の解説をしたのですが、、

Pythonプログラムを組む場合に、このrangeを使って繰り返すという処理ってあまりやらないです。

じゃあどうやって使うのかというと、、

第5章で解説したリストや辞書を使用した繰り返しです。

リストを使ったfor文

前回の章でリストから値を取得する方法として、

コード: python
item_list = ['item1', 'item2', 'item3', 'item4', 'item5']

print(item_list[0]) # 出力→item1

こういった方法で取得をかけていました。

だけどリストの場合には、こうやってインデックスで1つずつ取得するというのはあまりやらないです。

じゃあどうやって取得するのかというと、、

それが今回のfor文を活用します。

リストの値をfor文で取得する

上でも話しているように

コード: python
item_list = ['item1', 'item2', 'item3', 'item4', 'item5']

こういったリストの0番目の値を取得したい場合には、

コード: python
print(item_list[0])

という方法で取得しますよね。

だけどこうやって1つずつではなくて、、

「そのリストの中に入っている数字を順番に全部取り出したい」

っていうことがかなり多いんですね。

それが可能になるのがこのfor文で

コード: python
item_list = ['item1', 'item2', 'item3', 'item4', 'item5']

for item in item_list:
    print(item)

こんな感じで

コード: python
for 変数 in リスト:

ということをやってあげるとリストの中身を順番に変数に代入して繰り返すという処理を行うことができます。

実際やってみるとリストの中身の

item1、item2、item3、item4、item5という文字が順番に出力。

最後にプログラムが終了という文字列が出力されます。

for文の活用として、この使い方がかなり多いです。

いろいろなデータを集めてきて、そのデータを精査したい。

もちろんこれだけではただ繰り返しの処理なんですが、、

これは7章と8章の話ですが、if文を使って条件分岐をさせることで複雑な処理を行うことが出来るようになります。

本当によく使う方法なので、

『リストを順番に取り出すためにfor文を使う』

これはぜひ覚えておいてくださいね。

enumerateで順番も取得する

これはちょっと補足的な部分なのですが、、

リストをfor文で取得するときに順番も取得したいということが結構多いです。

例えば僕の場合であれば物販のシステムを作っていて、、

価格の情報っていうものを自動で更新させるシステムを組んでいます。

その価格情報って何千商品もあります。

その何千商品中の何番目の商品を今やっているのかなっていうものを判断したい

こういった時があるんですね。

そのときに今何番目の処理をしていますというのを簡単に出す方法があって、、

それがenumerateというものになります。

さっきまでだったら

コード: python
for 変数 in リスト:

という書き方でしたが、このリストの部分をenumerateで括ってあげます。

コード: python
for 変数1, 変数2 in enumerate(リスト):

こういった書き方ですね。

今までだったら変数は1つだったのですが、今回は順番の為の変数も必要なのでinの前に2つ変数を指定しています。

実際にコードにするなら

コード: python
item_list = ['item1', 'item2', 'item3', 'item4', 'item5']

for item_num, item in enumerate(item_list):
    print(f'{item_num}を確認中:{item}')

こんな感じですね。

変数1に連続した番号。

※1からではなく0から開始されるので注意

変数2にリストの中身。

こういった内容が入ってきます。

なので結果としては、、

・0を確認中:item1

・1を確認中:item2

・2を確認中:item3

・3を確認中:item4

・4を確認中:item5

こういった結果になるわけですね。

●f文字列

文字列を指定する「’」「”」の前にfを付けることでf文字列というものを使用出来ます。

この中で「{変数}」を使用すると変数の中身を取り出されます。

for文の中で僕は結構使ったりとかもする機能だったので、1つ補足として話をさせてもらいました。

辞書でfor文を使用する

次は辞書の場合にはどうやってfor文を使うかということを話していきますね。

実際for文を使って辞書の値を出力かけること僕はあまりやらないです。

というのも辞書って、、

英語の辞書とか国語辞書とかをイメージしてもらいたいのですが。

何かを調べるときに辞書の先頭から調べることってないですよね。

例えばenumerateっていう単語を調べたいときに、Aから辞書を見ていかないですよね。

辞書なのでenumerateっていう単語だったらeから始まる単語で、、

みたいな感じで意味を調べるわけじゃないですか。

それと同じようにこのPythonの辞書も使うので、前回やったkeyで指定してvalueを取得するというのが基本になります。

でも一応このfor文を使っても出力することも出来るので、その方法を一通り解説していきますね。

今回はこういった辞書を用意します。

コード: python
name_score_dic = {'suzuki':55, 'tanaka': 80, 'saito': 90}

keyを苗字にしてvalueとして得点を紐づけている辞書になります。

リストと同じ取得方法

最初はリストと同じように出力する方法です。

コード: python
name_score_dic = {'suzuki':55, 'tanaka': 80, 'saito': 90}

for name in name_score_dic:
    print(name)

ぱっと見ると辞書のkeyとvalueが順番に取得出来そうですよね。

だけど実際このプログラムを動かしてみると。

  • suzuki
  • tanaka
  • saito

というkeyのみが出力されます。

keyもvalueも取得したい

keyとvalueどちらも出力したい場合には、まず2つの変数が必要になります。

その上で辞書にitems()というものを付ける必要があります。

コード: python
name_score_dic = {'suzuki':55, 'tanaka': 80, 'saito': 90}

for name, score in name_score_dic.items():
    print(f'{name}{score}点です。')

こう書いてあげると出力されるのは、

  • suzukiは55点です。
  • tanakaは80点です。
  • saitoは90点です。

こんな感じで名前と得点のどちらも取得する事が出来ます。

keyのみを取得

リストと同じやり方でもkeyのみを取得することは出来るのですが、基本的にkeyを取得する時にはこういった書き方をします。

コード: python
name_score_dic = {'suzuki':55, 'tanaka': 80, 'saito': 90}

for name in name_score_dic.keys():
    print(name)

辞書の後にkeys()というものを付けると辞書の中のkey部分だけを取得出来ます。

valueのみを取得

valueのみを取得したい場合にはこういった書き方です。

コード: python
name_score_dic = {'suzuki':55, 'tanaka': 80, 'saito': 90}

for score in name_score_dic.values():
    print(score)

辞書の後にvalues()というものを付けるとvalue部分だけを取得出来ます。

といった感じで簡単にですが、for文を使用して辞書からデータを取得する方法の解説でした。

といった感じで今回for文について解説をさせてもらいました。

最後おさらいをしておくと

・for文の最後は『:』で終わる

・インデントを付けた部分がfor文として処理される

・rangeで繰り返しの回数を決めることが出来る

・for文を使うとリストや辞書の中身が取り出せる

こういった内容でした。

この繰り返しというのはPythonだけでなく、どのプログラミング言語でも使うものになります。

その中でもPythonではリストを扱うときにとても便利な機能です。

なのでぜひfor文の使い方をマスターしてくださいね。

でっ、次回がif文ですね。

条件分岐というものについて話をさせてもらいたいと思います。

このfor文とif文をしっかりと理解がプログラムの大元の部分になります。

ここをしっかりと理解できればかなりプログラムを自分で組むことが出来るようになります。

なので、ぜひ次回もお付き合いいただければと思います。


●第7章はこちら

Python講座:if文の書き方と起こりやすいエラーの解説~第7章~
Python
2026/02/04
Python講座:if文の書き方と起こりやすいエラーの解説~第7章~

●Python講座一覧ページ

Python講座一覧~四則演算・変数・for文・if文~
Python
2026/02/05
Python講座一覧~四則演算・変数・for文・if文~
質問はこちら
もし今回のことやプログラミングについて分からないことがあれば、回答していくので、気軽に以下から聞いてくださいね。
> 質問募集中です!

※頂いた質問は動画コンテンツとして回答していく予定です。



All Categories

Advertisement