Python問題集を解いてみよう!!

【Python】for 文

当ページのリンクには広告が含まれています。
【Python】for 文

こんにちは。Takuyaです。

今回は Python の for 文です。

プログラミングでは定番の繰り返しの処理を行うための構文ですね。

Pythonにおけるfor 文の基本的な書き方、具体的な使い方の例をいくつか見ていきます。

おすすめのレンタルサーバー
目次

for 文の書式

for 文の書き方は次のようになります。

for文の書式

変数名は繰り返したい処理の中で使用する変数になります。

シーケンス にはリスト、辞書、あとはrange()関数が入ることが多いです。リストの要素を順番に取り出して変数名に入れて、繰り返したい処理を行います。シーケンスの前のはin 、後ろには: を書きます。

そして、for ~ in ~ : の次の行から繰り返したい処理を書くのですが、繰り返したい処理の前にインデントを入れます。半角スペース4個を入れることが多いですが、全体で統一されていれば4個以外でも問題ありません。

このインデントが入っている行が続く限り、それは全てfor 文の中の繰り返し処理だと判断されます。

Python におけるfor 文は全てこの書き方になります。

例外はありません。

for 文の具体的な書き方

続いて、具体的なfor 文の書き方を見ていきます。

繰り返したい回数が決まっている場合はrange()関数を使う

for 文で繰り返したい回数が決まっている場合はシーケンスにrange() 関数を使います。

for i in range(5):
    print(i)

上記の実行結果

0
1
2
3
4

range(5)の場合、変数i には0〜4が入ります。

1から始めたい場合はrange() 関数で始点を指定します。

for i in range(1,6):
    print(i)
上記の実行結果
1
2
3
4
5

リストを使う

続いて、リストを使う場合です。

num_list = [1, 2, 3, 4, 5]

for i in num_list:
    print(i)

上記の実行結果

1
2
3
4
5

シーケンスにリストを指定すると、リストから要素を順番に取り出して変数に格納し、繰り返し処理を実行します。

words = ['Happy', 'birthday', 'to', 'you.']

for word in words:
    print(word)
上記の実行結果
Happy
birthday
to
you.

enumerate()関数を使う

リストのインデックス番号も利用したい場合はenumerate()関数が便利です。

インデックス番号と要素を同時に取り出せます。

sample_list = ["apple", "orange", "banana"]

for index, value in enumerate(sample_list):
    print(index, value)
上記の実行結果
0 apple
1 orange
2 banana

辞書を使う

続いて、辞書を使う場合です。

fruits = {'apple':100, 'orange':200, 'banana':300}

for fruit in fruits:
    print(fruit)

リストと同じように書いてみました。

この場合、どういう結果になるでしょうか。

ここで、辞書について自信の無い方はぜひ下記記事を見直していただきたいです。

辞書は keyvalue を持っています。

‘apple’、’orange’、’banana’ が key で、100、200、300が value になります。

では、for 文のシーケンスに辞書を指定するとどうなるか?

正解は、key が変数に格納されます。

そのため、最初のコードの実行結果は次のようになります。

apple
orange
banana

では、辞書の value をfor 文の変数に格納したい場合はどうするのか?

辞書の values() メソッドを使います。

fruits = {'apple':100, 'orange':200, 'banana':300}

for fruit in fruits.values():
    print(fruit)
上記の実行結果
100
200
300

では、key も value も使いたい場合はどうするのか???

この場合は、辞書のitems() メソッドを使います。

また、2つの値を繰り返し処理の中で使うことになるので、変数名も2つ、カンマで区切って指定します。

fruits = {'apple':100, 'orange':200, 'banana':300}

for fruit_name, fruit_price in fruits.items():
    print(fruit_name, fruit_price)
上記の実行結果
apple 100
orange 200
banana 300

辞書を使ってfor 文を回すケースも多いと思うので、辞書のvalues() メソッドとitems() メソッドは覚えておきましょう。

ちなみに、辞書にはkeys()メソッドもあります。

その他にシーケンスに指定できるもの

range()関数、リスト、辞書を使うパターンをご紹介しましたが、その他にもシーケンスに使えるものはあるのでしょうか?

もちろんあります。

for文のシーケンスとして使用できるものは反復可能体(iterable、イテラブル)と呼ばれています。

for文に関してさらに理解を深めたい方はイテラブルについて調べてみると良いかもしれません。

ちなみに、シーケンスとしてタプルも使えますし、文字列も使えます。

num_tuple = (1, 2, 3)

for i in num_tuple:
    print(i)
上記の実行結果
1
2
3
for i in 'Happy':
    print(i)
上記の実行結果
H
a
p
p
y

Google Colaboratory

本記事に掲載しているコードはGoogle Colaboratoryでも動作を確認しています。

下記リンクからアクセスして、ご自身の Google ドライブにコピーしていただければ、すぐに実行できます。

環境構築が必要ない Google が提供している Web サービスなので、Python を学習中の方、これから学習を始める方にはオススメです。

まとめ

今回は Python におけるfor文について、

  • 基本的な書き方
  • range()関数を使う例
  • リストを使う例
  • enumerate()関数を使う例
  • 辞書を使う例

をご紹介しました。

以上です。

スポンサーリンク

【Python】for 文

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

目次