【Python】enumerate関数について 基本的な使い方やリスト内包表記での使用例などサンプルコードを交えて解説

Pythonには、リストやタプルといったシーケンス型のデータを扱う際に便利な関数がいくつかあります。その中でもenumerateは、シーケンスの要素とそのインデックスを同時に取得できる便利な関数です。この記事では、enumerateの基本的な使い方や活用法について解説します。

enumerateの基本的な使い方

enumerateはリストやタプルなどのシーケンスを受け取り、順番にデータの要素とインデックスを取得することができます。

基本的な構文は次のとおりです。

for index, value in enumerate(iterable, start=0):
    # 処理
  • iterable:リストやタプルなどのシーケンス。
  • start(任意):インデックスの開始値。デフォルトは0です。

基本的な例

リストの要素を順番に取得し、インデックスとともに出力する例です。

コピーしました!

Python
fruits = ['apple', 'banana', 'cherry']

for index, fruit in enumerate(fruits):
    print(f"{index}: {fruit}")

出力結果

0: apple
1: banana
2: cherry

このように、enumerateを使うとデータの要素とインデックスを同時に取得できます。

start引数を指定する

デフォルトではインデックスは0から始まりますが、start引数で任意の数値から始めることができます。

コピーしました!

Python
fruits = ['apple', 'banana', 'cherry']

for index, fruit in enumerate(fruits, start=1):
    print(f"{index}: {fruit}")

出力結果

1: apple
2: banana
3: cherry

enumerateを使うメリット

コードを簡潔にすることができます。

enumerateを使うことで、繰り返し処理を行う際、インデックスを明示的に管理する必要がなくなります。

リスト内包表記での使用例

enumerateはリスト内包表記とも組み合わせることができます。インデックスと要素を組み合わせたリストを作成する例です。

コピーしました!

Python
fruits = ['apple', 'banana', 'cherry']
fruit_list = [f"{index}: {fruit}" for index, fruit in enumerate(fruits)]
print(fruit_list)

出力結果

['0: apple', '1: banana', '2: cherry']

辞書(dictionary)型のデータ作成にも使える

enumerateを使ってインデックスをキー、要素を値とする辞書を作成することもできます。

コピーしました!

Python
fruits = ['apple', 'banana', 'cherry']
fruit_dict = {index: fruit for index, fruit in enumerate(fruits)}
print(fruit_dict)

出力結果

{0: 'apple', 1: 'banana', 2: 'cherry'}

まとめ

enumerate関数を使うことで、シーケンスの要素とインデックスを同時に取得することができます。特に、繰り返し処理でインデックスが必要な場合には、手動でインデックスを管理するよりもenumerateを活用するのが効果的です。

本メディアの記事等の内容には細心の注意を払っておりますが、正確性を保証するものではありません。もし記事内に誤りや不正確な情報がございましたら、こちらのお問い合わせフォームよりご連絡ください。

当メディアは、読者の皆様からのご指摘を大切にし、内容の見直しや修正を行うことで、より有益な記事を提供していく所存です。皆様のご理解とご協力をお願いいたします。