
3.1
データ構造とシーケンス
59
3.1.2
リスト
タプルとは異なり、リストは可変長で内容も差し替えることが可能です。リストの定義は大括弧
[]
か、あるいは
list
関数を使います。
In [36]: a_list = [2, 3, 7, None]
In [37]: tup = ('foo', 'bar', 'baz')
In [38]: b_list = list(tup)
In [39]: b_list
Out[39]: ['foo', 'bar', 'baz']
In [40]: b_list[1] = 'peekaboo'
In [41]: b_list
Out[41]: ['foo', 'peekaboo', 'baz']
リストとタプルは意味的には似ているので(ただし、タプルは内容の変更が不可能)、多くの関数を
相互に使うことができます。
例えば、データを処理したいときに、
list
関数を使ってイテレータやジェネレータ式を使うことはよ
くあります。
In [42]: gen = range(10)
In [43]: gen
Out[43]: range(0, 10)
In [44]: list(gen)
Out[44]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
3.1.2.1
要素の追加と削除
append
メソッドを使ってリストの末尾に要素を追加することができます。
In [45]: b_list.append('dwarf')
In [46]: b_list
Out[46]: ['foo', ...