pythonのenumerate()関数の使用方法

2394 ワード

実例に合わせて理解した方がいいと思いますが、ネットでこのenumerateの使い方を探してみました.
  • enumerate関数の説明:
  • 関数プロトタイプ:enumerate(sequence,[start=0])#2番目のパラメータは、指定されたインデックス
  • です.
  • 機能:ループ可能シーケンスsequenceをstartでシーケンスデータとデータの下付き
  • をそれぞれリストする.
  • は、リスト、タプル、文字列などの遍歴可能なデータ・オブジェクトに対してenumerateがデータ・オブジェクトをインデックス・シーケンスに結合し、データとデータの下付き
  • をリストします.
  • 例:
  • にはsequenceが存在し、enumerateを使用すると次の結果が得られます.
  • start        sequence[0]
  • start+1  sequence[1]
  • start+2    sequence[2]......


  • 具体例:
  • 出力インデックスとvalue値の印刷
    #  1
    print '  1'
    product = ["Mac pro", "iPhone", "iWatch"]
    for index, item in enumerate(product):
        print(index, item)
        
    #  2
    print '  2'
    list = [1, 2, 3, 4, 5, 6]
    print list[::-1] #    
    for index, item in enumerate(list):
        print(index, item)
    
    #   
    print '   '
    for i, j in enumerate('abcde'):
        print(i, j)
        
    #  
    print '  '
    for i, j in enumerate(('a', 'b', 'c', 'd', 'e')):
        print(i, j)
    
    #  
    print '  '
    for i, j in enumerate({'a':1, 'b':2}):
        print (i, j)
    #    
      1
    (0, 'Mac pro')
    (1, 'iPhone')
    (2, 'iWatch')
      2
    [6, 5, 4, 3, 2, 1]
    (0, 1)
    (1, 2)
    (2, 3)
    (3, 4)
    (4, 5)
    (5, 6)
       
    (0, 'a')
    (1, 'b')
    (2, 'c')
    (3, 'd')
    (4, 'e')
      
    (0, 'a')
    (1, 'b')
    (2, 'c')
    (3, 'd')
    (4, 'e')
      
    (0, 'a')
    (1, 'b')
    >>> product = [
    ...         "Mac pro",
    ...         "iPhone",
    ...         "iWatch"
    ...     ]
    >>> for index,item in enumerate(product):
    …          print(index,item)
    >>>
    
    #       
    0     Mac pro
    1    iPhone
    2    iWatch
    #     enumerate        :
    >>> for index,item in enumerate(product,1)://              ,   1      1    ,   0  
     …          print(index,item)
    >>>
    #      
    1  Mac pro
    2   iPhone
    3   iWatch
    #        
    regs = [
        ('D', 1),
        ('R', 2),
        ('B', 3),
        ('Ba', 4)]
    print regs
    print type(regs[0])
    print regs[0][0]
    print regs[0][1]
    print type(regs[0][1])
    print type(regs[0][0])

    結果を返します.
    [('D', 1), ('R', 2), ('B', 3), ('Ba', 4)] D 1
    Process finished with exit code 0