Python: タプルを作成する方法
Pythonでタプルを作成する方法を解説します。
タプルとは順序付けられた複数の構成要素からなる組の事です。
タプルを作成する場合は丸括弧()の中に値(要素)をカンマ区切りで記述します。 リストは角括弧[]ですが、タプルは丸括弧()です。
書式
タプル名 = (値1, 値2, 値3)
タプルの具体的な作成例は次の通りです。 3番目の t3のように型の異なる要素がまじっていても構いません。
t1 = (1, 2, 3, 4, 5) t2 = ("a", "b", "c") t3 = ("a", 1, "b", 2)
要素が1つの場合、カンマが必要
要素が1つのタプルを作成する場合、 要素の後ろにカンマ「,」を付ける必要があります。 カンマが無いとタプルではなく単独の値(intやstr等)と判断されてしまいます。
次のサンプルコードでは、要素が1つで、カンマ有りとカンマ無しの場合を比べています。 変数 t1は tupleと解釈されていますが、t2は intと解釈されています。
t1 = (1,) # カンマ有り t2 = (1) # カンマ無し print(type(t1)) # <class 'tuple'> print(type(t2)) # <class 'int'>
空のタプルを作成する
空のタプルを作成する場合は () だけ、又はtuple()と記述します。
# 空のタプルを作成 t = () t = tuple()
タプルの要素数が多い場合の記述方法
タプルの要素数が多い場合、1行で無理やり書くと見にくくなります。 その場合は複数行にして書くことができます。
t = ("abcde", "fghijk", "lmnop", "qrstt", "vwxyz", "abcdefg", "hijklmn", "opqustu") print(len(t)) # 8
Pythonの言語仕様上、文の途中で改行する場合は「\」記号を付けますが、 []・()・{}の中では「\」記号を付けることなく自由に改行できます。 ですから上のような記述が可能になります。
tuple()で作成する
タプルコンストラクタのtuple()を使って作成することもできます。
書式
tuple(イテラブルなオブジェクト)
引数はイテラブルなオブジェクトです。 引数として単純に「"a", "b", "c"」と指定してもエラーとなります。 "abc"を指定した場合は("a", "b", "c")のタプルが作成されます。
次のサンプルコードはtuple()を使った具体的なタプル作成例です。
# エラーとなる指定方法 t1 = tuple("a", "b", "c") # エラー # 文字列を指定 t2 = tuple("abc") print(t2) # ('a', 'b', 'c') # タプルを指定 t3 = tuple(("a", "b", "c")) print(t3) # ('a', 'b', 'c') # リストを指定 t4 = tuple(["a", "b", "c"]) print(t4) # ('a', 'b', 'c') # 空のタプル t5 = tuple() print(t5) # ()