【Python】タプルの取り出し

【Python】タプルの取り出し

Pythonのタプルの取り出し

目次

タプルのインデックスによる取り出し

Pythonのタプルはリストと同様に、インデックスを使って要素を取り出せます。


t = (10, 20, 30, 40, 50)
print(t[0])  # 10
print(t[2])  # 30
print(t[-1]) # 50

インデックスは 0 から始まり、負のインデックスを使うと末尾から数えられます。

タプルのスライスによる取り出し

タプルの一部を取り出すにはスライスを使います。


t = (10, 20, 30, 40, 50)
print(t[1:4])   # (20, 30, 40)
print(t[:3])    # (10, 20, 30)
print(t[2:])    # (30, 40, 50)
print(t[::2])   # (10, 30, 50)
print(t[::-1])  # (50, 40, 30, 20, 10)

スライスの構文は start:end:step です。step を負にすると逆順になります。

タプルのアンパックによる取り出し

タプルのアンパックを使うと、複数の変数に一度に値を割り当てられます。


t = (10, 20, 30)
a, b, c = t
print(a, b, c)  # 10 20 30

一部の要素を無視する場合はアンダースコア (_) を使います。


t = (10, 20, 30, 40, 50)
a, _, c, _, e = t
print(a, c, e)  # 10 30 50

可変長のアンパックも可能です。


t = (1, 2, 3, 4, 5)
a, *middle, b = t
print(a)       # 1
print(middle)  # [2, 3, 4]
print(b)       # 5

タプルのイテレーションによる取り出し

for ループを使ってタプルの要素を順番に取り出せます。


t = (10, 20, 30, 40)
for item in t:
    print(item)

インデックスが必要な場合は enumerate() を使います。


t = ("a", "b", "c")
for index, value in enumerate(t):
    print(f"Index {index}: {value}")

ネストされたタプルからの取り出し

タプルの中にタプルが入っている場合は、インデックスを組み合わせてアクセスできます。


t = ((1, 2), (3, 4), (5, 6))
print(t[0])    # (1, 2)
print(t[1][1]) # 4

for ループとアンパックを組み合わせると、より簡単にアクセスできます。


t = ((1, 2), (3, 4), (5, 6))
for a, b in t:
    print(a, b)

発展的なタプルの取り出し方

zip() を使った取り出し

複数のタプルを並行して取り出すには zip() を使います。


t1 = (1, 2, 3)
t2 = ("a", "b", "c")
for num, char in zip(t1, t2):
    print(num, char)

辞書の items() を使った取り出し

辞書のキーと値をタプルとして取得できます。


d = {"x": 10, "y": 20}
for key, value in d.items():
    print(f"{key}: {value}")

関数の戻り値としてのタプルの取り出し

関数がタプルを返す場合、それをアンパックできます。


def func():
    return 1, 2, 3

x, y, z = func()
print(x, y, z)  # 1 2 3

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です