シーケンス型

Python

カテゴリー: Data Structures  閲覧数:179 配信日:2017-12-05 12:29


シーケンス型とは?


順序のある要素の集まり
・配列で表現するデータの型

リスト型 / list


変更可能なオブジェクト

定義するには?
・角括弧 [ ] を使用
・含める要素をカンマ , で区切り並べる
data = [1,2,3]
data = [1,2,3]
print(type(data)) #<class 'list'>


複数の型のデータをひとまとめにできる
・リスト型は構成する要素のタイプが混在していても良い
・あらゆるタイプの変数を当てはめることが出来る
data = [1, "あ", 9.9]

入れ子にすることもできる
data = [[12345, 54321, 'brown'], [1, 2, 3, 4, 5]]
print(data) #[[12345, 54321, 'brown'], [1, 2, 3, 4, 5]]
print(type(data)) #<class 'list'>


タプル型 / tuple


イミュータブル (immutable)
・変更不可なオブジェクト
・タプルはタプルの変更を許すようなメソッドを持っていない

あらゆるタイプの変数を当てはめることが出来る
・リスト型と同じように、構成する要素のタイプが混在していても良い

定義するには?
・括弧 ( ) を使用
・含める要素をカンマ , で区切り並べる
data= (1,2,3)
data = (1,2,3)
print(type(data)) #<class 'tuple'>


入れ子にすることもできる
data = ((12345, 54321, 'brown'), (1, 2, 3, 4, 5))
print(data) #((12345, 54321, 'brown'), (1, 2, 3, 4, 5))
print(type(data)) #<class 'tuple'>


要素が1つのタプルを定義する際にもカンマが必要
・処理の優先順位を決める括弧と区別するため
data= (1,)
data = (1,)
print(type(data)) #<class 'tuple'>


リスト型との違い
・( )で要素を囲んでいる
・一度作成したタプル要素の変更は出来ない
・リスト型に対する .append() のような破壊的な操作は存在しない

タプル