Pythonにおけるenumerate関数コード解析

1749 ワード

Enumerate関数は、シーケンス内の要素およびそれらの下付きを巡回するために使用されます.
Enumerate関数の説明:
関数プロトタイプ:enumerate(sequence,[start=0])
機能:ループ可能シーケンスsequenceをstartで開始し、シーケンスデータとデータの下書きをそれぞれリストします.
すなわち、リスト、メタグループ、文字列などの遍歴可能なデータ・オブジェクトに対して、enumerateはデータ・オブジェクトをインデックス・シーケンスに結合し、データとデータの下付きラベルをリストします.
例:
enumerateを使用すると、次の結果が得られます.
start        sequence[0] start+1  sequence[1] start+2    sequence[2]......
適用バージョン:
Python2.3+ Python2.x
注意:python 2.6以降startパラメータが追加されました
英文解釈:
Return an enumerate object. sequence must be a sequence, an iterator, or some other object which supports iteration. The next() method of the iterator returned by enumerate() returns a tuple containing a count (from start which defaults to 0) and the values obtained from iterating over sequence.
コードの例:
Enumerateパラメータは、文字列、リストなど、遍歴可能な変数です.戻り値はenumerateクラスです.

import string
s = string.ascii_lowercase
e = enumerate(s)
print s
print list(e)

出力:

abcdefghij
[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd'), (4, 'e'), (5, 'f'), (6, 'g'), (7, 'h'), (8, 'i'), (9, 'j')]

indexとvalue値を同時に必要とする場合はenumerateを使用します.
この例では、lineはstringで0と1を含み、1をすべて探し出すには:

def xread_line(line):
 return((idx,int(val)) for idx, val in enumerate(line) if val != '0')
print read_line('0001110101')
print list(xread_line('0001110101'))

まとめ
以上,Pythonにおけるenumerate関数コード解析のすべてについて述べたが,皆さんの役に立つことを願っている.興味のある方は引き続き当駅:pythonデータ型判断typeとisinstanceの区別例解析、pythonにおけるrequestsライブラリsessionオブジェクトの妙用詳細などを参照し、より多くの素晴らしい内容は//www.jb 51に尽きる.net/!