シーケンス型
list型とtuple型は、共にコンテナシーケンス型。
list型は可変、tuple型は不変。
型 |
可変/不変 |
コンテナ/フラット |
list |
可変 |
コンテナ |
tuple |
不変 |
コンテナ |
collections.deque |
可変 |
コンテナ |
str |
不変 |
フラット |
bytes |
不変 |
フラット |
array.array |
可変 |
フラット |
bytearray |
可変 |
フラット |
list型とtuple型のメソッド比較
メソッド |
説明 |
list型 |
tuple型 |
s[p] (s.__getitem__(p)) |
位置pにある要素を取得 |
● |
● |
s.index(e) |
eの最初出現位置を探す |
● |
● |
len(s) (s.__len__()) |
要素数 |
● |
● |
s.count(e) |
要素eの出現回数を計算 |
● |
● |
e in s (s.__contains__(e)) |
e in s |
● |
● |
s.__iter__() |
イテレータの取得 |
● |
● |
s + s2 (s.__add__(s2)) |
連結 |
● |
● |
s += s2 (s.__iadd__(s2)) |
置換連結 |
● |
|
s * n (s.__mul__(n)) |
繰り返し連結 |
● |
● |
s *= n (s.__imul__(n)) |
繰り返し置換連結 |
● |
|
n * s (s.__rmul__(n)) |
逆繰り返し連結 |
● |
● |
s[p] = e |
要素eで位置pにある既存要素を上書き |
● |
|
s.append(e) |
最後に要素eを追加 |
● |
|
s.extend(it) |
リストに別のリスト(iterableオブジェクト)の要素を一つずつ要素として追加 |
● |
|
s.insert(p, e) |
位置pの前に要素eを挿入 |
● |
|
s.pop([p]) |
最後の要素または位置pの要素を取り出す(pはオプション) |
● |
|
s.remove(e) |
最初に出現する要素eを削除 |
● |
|
s.__delitem__(p) |
位置pにある要素を削除 |
● |
|
s.clear() |
全ての要素を削除 |
● |
|
s.reverse() |
順序を逆にする |
● |
|
s.__reversed__() |
逆順序のイテレータの取得 |
● |
|
s.sort([key], [reverse]) |
ソート(keyとreverseはオプション) |
● |
|
s.copy() |
リストのコピー |
● |
|
s.__getnewargs__() |
pickleによる最適な直列化のサポート |
|
● |