2.1.5 シーケンスタイプ

シーケンスタイプには文字列、リスト、タプルの3つがあります。

文字列リテラルは'xyzzy', "frobozz"のようにシングルまたはダブルクオートで記述されます。文字列リテラルの詳細はパイソンリファレンスマニュアルの2章を参照して下さい。 リストは[a, b, c]のように角かっことカンマで区切られた要素で構成されます。 タプルはカンマ演算子(角かっこ内にない)とそれを囲むカッコ(無い場合もある)により構成されます。だたし、空のタプルにはカッコが必要です。 例えば、a, b, c または ()のようになります。 単一要素のタプルは(d,)のようにカンマで終わる必要があります。     

シーケンスタイプは以下の演算をサポートしています。 "in"と"not in"演算は比較演算と同じ優先順位を持っています。 "+"と"*"演算は対応する数値演算と同じ優先順位を持っています。 2.3

この表はシーケンス演算を優先順位の低いものから高いものにソートして表示しています(同じボックス内の演算は同じ優先順位を持ちます)。表内でstは同じタイプのシーケンスで、n, i, jは整数です。

演算 結果
x in s sの要素がxに等しければ1, そうでなければ0
x not in s sの要素がxに等しければ0, そうでなければ1
s + t stの連結
s * n, n * s sn個コピーして連結 (3)
s[i] si番目の要素, 0から始まる (1)
s[i:j] siからjのスライス (1), (2)
len(s) sの長さ
min(s) sの最小要素
max(s) sの最大要素
          

注:

(1)
iまたはjが負なら、そのインデックスはその文字列の最後からのインデックスとなる。-00と同じことに注意。
(2)
siからjのスライスはインデックスk (i <=k < j)のアイテムのシーケンスとして定義されます。もしi または jlen(s)より大きい場合には、len(s)が使われます。iが省略されると0が使われます。jが省略されるとlen(s)が使われます。 ij以上の場合は、スライスは空になります。

(3)
n0より小さいときは0と扱われます。(これはsと同じタイプの空のシーケンスを生成します。)


guido@python.org