イテラブル(Iterable)¶
イテラブルとは、for
で繰り返し可能なオブジェクトです。
リストやタプルや集合や辞書や文字列はイテラブルです。
利用例¶
for i in [1, 2, 3]:
print(i)
イテレーター(Iterator)¶
イテレーターは、イテラブルを操作するオブジェクトです。iter(イテラブル)
とすることで、イテラブルのイテレーターを作成できます。
任意のイテレーターはイテラブルです。しかし、あるイテラブルがイテレーターとは限りません。
next(イテレーター)
とすることで、該当するイテラブルの最初の要素を取得します。
もう一度、next(イテレーター)
とすると、2番目の要素を取得します。
ただし、要素がないときにnext(イテレーター)
とするとStopIteration
例外が発生します。
コンテナ(Container)¶
in
演算子を利用できるオブジェクトをコンテナといいます。
リストやタプルや集合や辞書や文字列はコンテナです。
利用例¶
print(2 in [1, 2, 3])
print("yth" in "Python")
要素 in コンテナ
は要素がコンテナに存在するかどうかを返します。
ただし、部分文字列 in 文字列
は文字列中に部分文字列が存在するかどうかを返します。
Sized¶
len(オブジェクト)
で要素数を返すオブジェクトをSizedといいます。
リストやタプルや集合や辞書や文字列はSizedです。
コレクション(Collection)¶
イテラブルかつコンテナかつSizedであるオブジェクトをコレクションといいます。 リストやタプルや集合や辞書や文字列はコレクションです。
シーケンス(Sequence)¶
シーケンスを参考にしてください。
ジェネレーター(Generator)¶
ジェネレーターを参考にしてください。
コレクション抽象基底クラス¶
コレクション抽象基底クラスの表を参考にしてください。