イテラブル【iterable】

概要

イテラブルとは、プログラミングにおいて要素を一つずつ順番に取り出すことができるオブジェクトの総称。for文などの繰り返し処理に渡すことができるデータ構造データ型を指し、多くのプログラミング言語で使われる概念である。
イテラブルのイメージ画像

プログラムでは複数のデータをまとめて扱い、それらを順番に処理する操作が頻繁に登場する。例えば、配列に格納された商品名を一つずつ表示したり、文字列を構成する文字を先頭から順に処理したりする場面がこれにあたる。イテラブルはこうした「順番に取り出せる」という性質を抽象化した概念であり、具体的なデータ構造の種類を問わず統一的な方法で繰り返し処理を記述できるようにする。

Pythonの場合、リスト、タプル、文字列、辞書、セット、ファイルオブジェクトなどがイテラブルに相当する。これらはいずれもfor文に直接渡すことができ、内部の要素を順番に取り出しながら処理を進めることができる。内部的には「__iter__」メソッドを持つオブジェクトであり、このメソッドが「イテレータ」と呼ばれる別のオブジェクトを返すことで繰り返し処理の仕組みが実現される。

イテラブルと混同されやすい概念に「イテレータ」(iterator)がある。イテレータはイテラブルから生成され、現在の位置を内部に保持しながら「次の要素」を返す機能を持つオブジェクトである。すべてのイテレータはイテラブルでもあるが、すべてのイテラブルがイテレータであるわけではない。Pythonの場合、iter()関数にイテラブルを渡すとイテレータが生成され、next()関数を呼び出すことで要素を一つずつ取り出すことができる。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。