今日もPythonのお勉強。
イテレータからやる。
イテレータオブジェクト
イテレータプロトコルをサポートするオブジェクトのこと。
必ずnext()という「ループにおいて次に処理対象となるオブジェクトを戻す」メソッドを持っている。
イテレータオブジェクトとジェネレータ。
ジェネレータはイテレータプロトコルをサポートしている。
よってジェネレータもイテレータの一種ということができる。
ビルトインオブジェクト
ビルトインオブジェクトはビルトイン関数iter()によってイテレータオブジェクトを作成できるように設計されている。
さっそくやってみる。
>>> L = [1,2,3,4,5]
>>> xx = iter(L)
>>> xx.next()
1
>>> xx.next()
2
>>> xx.next()
3
>>> xx.next()
4
>>> xx.next()
5
>>>
リストの例。
次はディクショナリ。
>>> D = {'a':1,'b':2,'c':3}
>>> xx = iter(D)
>>> xx.next()
'a'
>>> xx.next()
'c'
>>> xx.next()
'b'
>>> xx.next()
Traceback (most recent call last):
File "", line 1, in ?
StopIteration
>>>
できた。
要素が無くなるとExceptionをはく。
ふーん。
おしまい。
.
0 コメント:
コメントを投稿