零学Pythonの入門(三)シーケンスから
2103 ワード
シーケンス
sequence(シーケンス)は、順序付き要素のセットです.
(厳密には、オブジェクトの集合ですが、「オブジェクト」の概念を導入していないため、要素を一時的に言います)
シーケンスには、1つ以上の要素が含まれていてもよいし、要素がなくてもよい.
前に述べた基本データ型は、シーケンスの要素として使用できます.要素は、別のシーケンスであってもよく、後で説明する他のオブジェクトであってもよい.
シーケンスにはtuple(定値テーブル;メタグループに翻訳)とlist(テーブル)の2種類があります.
tupleとlistの主な違いは、いったん確立されると、tupleの各要素は変更できず、listの各要素は再変更できることである.
1つのシーケンスを別のシーケンスの要素として使用
空のシーケンス
要素の参照
シーケンス要素の下付き文字は0から始まります.
リストの要素は変更可能であるため、リストの要素に値を割り当てることができます.
tupleに対してこのような操作をすると、エラーメッセージが表示されます.
したがって,シーケンスの参照はs[]によって実現され,intは下付きであることがわかる.
その他の参照方法
範囲参照はんいさんしょう:基本スタイルきじゅんすたいる[下限:上限:ステップサイズ]
上から分かるように、範囲で引用する場合、上限を明記すれば、この上限自体は含まれません.
末尾要素参照
同様に、s 1[0:-1]の場合、最後の要素は参照されません(もう一度、上限要素自体は含まれません).
文字列はタプル
文字列は特殊な要素であるため、メタグループに関する操作を実行できます.
まとめ
tuple要素可変、list要素可変
シーケンスの参照s[2],s[1:8:2]
文字列はtupleです
sequence(シーケンス)は、順序付き要素のセットです.
(厳密には、オブジェクトの集合ですが、「オブジェクト」の概念を導入していないため、要素を一時的に言います)
シーケンスには、1つ以上の要素が含まれていてもよいし、要素がなくてもよい.
前に述べた基本データ型は、シーケンスの要素として使用できます.要素は、別のシーケンスであってもよく、後で説明する他のオブジェクトであってもよい.
シーケンスにはtuple(定値テーブル;メタグループに翻訳)とlist(テーブル)の2種類があります.
>>>s1 = (2, 1.3, 'love', 5.6, 9, 12, False) # s1 tuple
>>>s2 = [True, 5, 'smile'] # s2 list
>>>print s1,type(s1)
>>>print s2,type(s2)
tupleとlistの主な違いは、いったん確立されると、tupleの各要素は変更できず、listの各要素は再変更できることである.
1つのシーケンスを別のシーケンスの要素として使用
>>>s3 = [1,[3,4,5]]
空のシーケンス
>>>s4 = []
要素の参照
シーケンス要素の下付き文字は0から始まります.
>>>print s1[0]
>>>print s2[2]
>>>print s3[1][2]
リストの要素は変更可能であるため、リストの要素に値を割り当てることができます.
>>>s2[1] = 3.0
>>>print s2
tupleに対してこのような操作をすると、エラーメッセージが表示されます.
したがって,シーケンスの参照はs[]によって実現され,intは下付きであることがわかる.
その他の参照方法
範囲参照はんいさんしょう:基本スタイルきじゅんすたいる[下限:上限:ステップサイズ]
>>>print s1[:5] # 4 ( 5 )
>>>print s1[2:] # 2
>>>print s1[0:5:2] # 0 4 ( 5 ), 2 ( 0,2,4 )
>>>print s1[2:0:-1] # 2 1
上から分かるように、範囲で引用する場合、上限を明記すれば、この上限自体は含まれません.
末尾要素参照
>>>print s1[-1] #
>>>print s1[-3] #
同様に、s 1[0:-1]の場合、最後の要素は参照されません(もう一度、上限要素自体は含まれません).
文字列はタプル
文字列は特殊な要素であるため、メタグループに関する操作を実行できます.
>>>str = 'abcdef'
>>>print str[2:4]
まとめ
tuple要素可変、list要素可変
シーケンスの参照s[2],s[1:8:2]
文字列はtupleです