工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Python

Python enumerate()をマスター:リスト、タプル、文字列、辞書でインデックス付きループ

Python enumerate()をマスター:リスト、タプル、文字列、辞書でインデックス付きループ

enumerate()は、任意のイテラブルにカウンタを付与し、(インデックス, 値)タプルのイテレータを返すPython組み込み関数です。公式Pythonドキュメントによると、反復処理中に位置と要素の両方にアクセスする簡潔で効率的な方法を提供します。

重要なポイント

構文

enumerate(iterable, start=0)

パラメータ

戻り値

(インデックス, 要素)のペアを生成するイテレータ。インデックスはstartから始まり、要素ごとに1ずつ増加。

enumerate()の基本例

リストmy_listをenumerate()に渡し、結果のイテレータをリストに変換して表示:

my_list = ['A', 'B', 'C', 'D']
print(list(enumerate(my_list)))

出力:

[(0, 'A'), (1, 'B'), (2, 'C'), (3, 'D')]

カスタム開始インデックス

start引数で番号をシフト:

my_list = ['A', 'B', 'C', 'D']
print(list(enumerate(my_list, 2)))

出力:

[(2, 'A'), (3, 'B'), (4, 'C'), (5, 'D')]

enumerate()でのループ

forループ内でenumerate()を使うと、別途カウンタ変数なしでコードがシンプルに:

my_list = ['A', 'B', 'C', 'D']
for index, value in enumerate(my_list):
    print(index, value)
print("---")
for index, value in enumerate(my_list, 10):
    print(index, value)

出力:

0 A
1 B
2 C
3 D
---
10 A
11 B
12 C
13 D

タプルの列挙

タプルにも同じパターンが適用:

my_tuple = ('A', 'B', 'C', 'D', 'E')
for index, value in enumerate(my_tuple):
    print(index, value)

出力:

0 A
1 B
2 C
3 D
4 E

文字列の列挙

Pythonでは文字列もイテラブルなので、enumerate()で各文字の位置を取得:

my_str = "Guru99"
for index, char in enumerate(my_str):
    print(index, char)

出力:

0 G
1 u
2 r
3 u
4 9
5 9

辞書の列挙

辞書をenumerate()に渡すと、キーを反復:

my_dict = {"a": "PHP", "b": "JAVA", "c": "PYTHON", "d": "NODEJS"}
for index, key in enumerate(my_dict):
    print(index, key)

出力:

0 a
1 b
2 c
3 d

なぜenumerate()を使うのか?

まとめ

Python

  1. Python 関数引数完全マスター: 位置引数・キーワード引数・デフォルト引数
  2. Python ラムダ関数: 無名関数の実践ガイド
  3. Pythonジェネレータ:効率的イテレーションと高度なユースケース
  4. Pythonクロージャ解説:ネスト関数が変数を捕捉する仕組み
  5. Pythonデコレータマスター:エキスパート技法で関数を拡張
  6. Pythonループ完全ガイド:for、while、break、continue、enumerate
  7. Python strip()メソッド完全ガイド:実践例付き
  8. Python str.count()マスター:文字と部分文字列のカウント実例集
  9. Python len()関数:オブジェクトの長さを測る実践ガイド
  10. Python range()関数をマスター:基礎から応用まで
  11. Python yieldをマスター:ジェネレータvs return – 実践ガイド