Pythonタプル(tuple)入門:作成・操作・削除の基本をコード例で解説
Pythonにおけるタプル(tuple)は、順序付け(ordered)かつ変更不可(immutable)という特徴を持つコレクションです。変更不可であるため、一度作成したタプルに要素を追加したり削除したりすることはできません。
タプルは丸括弧 () と、最低1つのカンマ , を使って作成します。
また、タプルはリストと同じようにインデックス指定やスライシングが可能ですが、スライスの結果もタプルとして返される点に注意しましょう。
タプルの作り方
colorsTuple = ("red", "green", "blue")
print(colorsTuple)
実行結果:
('red', 'green', 'blue')
要素が1つだけのタプルを作成する方法
タプルには最低1つのカンマが必要です。そのため、要素が1つだけのタプルを作る場合は、要素の直後にカンマを付ける必要があります。
colorsTuple = ("red",)
タプルの要素へのアクセス方法
タプルの各要素には、インデックス番号を指定してアクセスできます。
colorsTuple = ("red", "green", "blue")
print(colorsTuple[2])
実行結果:
blue
範囲を指定して要素へアクセスする(スライシング)
開始インデックスと終了インデックスを指定することで、タプルから特定の範囲の要素を取り出せます。このとき : 演算子を使用します。
ポイント: 戻り値も、指定した要素を含む新しいタプルになります。
colorsTuple = ("red", "green", "blue", "yellow", "orange", "white")
print(colorsTuple[1:4])
実行結果:
('green', 'blue', 'yellow')
負のインデックスによるアクセス
負の値をインデックスに指定すると、タプルの末尾から要素へアクセスできます。例えば、-1 は最後の要素、-2 は後ろから2番目の要素を表します。
colorsTuple = ("red", "green", "blue", "yellow", "orange", "white")
print(colorsTuple[-2])
実行結果:
orange
タプルをループ処理する方法
for ループを使えば、タプル内の全要素を順番に処理できます。
colorsTuple = ("red", "green", "blue", "orange")
for c in colorsTuple:
print(c)
実行結果:
red
green
blue
orange
タプルを削除する方法
タプルを完全に削除するには、del キーワードを使用します。
colorsTuple = ("red", "green", "blue", "orange")
del colorsTuple
print(colorsTuple)
実行結果:
Traceback (most recent call last):
File "pythonTuples.py", line 98, in <module>
print(colorsTuple)
NameError: name 'colorsTuple' is not defined
このように del でタプルを削除すると、変数自体が存在しなくなります。そのため、削除後にアクセスしようとすると NameError が発生します。
タプルの長さ(要素数)を取得する方法
タプルの長さは len() 関数で取得できます。
colorsTuple = ("red", "green", "blue", "orange")
print(len(colorsTuple))
実行結果:
4
特定の要素の出現回数をカウントする
count() メソッドを使うと、タプル内に指定した要素が何回出現するかを調べることができます。
colorsTuple = ("red", "green", "blue", "orange", "red")
print(colorsTuple.count("red"))
実行結果:
2
2つのタプルを結合する方法
2つのタプルを結合する最も簡単な方法は、+ 演算子を使うことです。
colorsTuple = ("red", "green", "blue", "orange")
numbersTuple = (1, 2, 3, 4)
numbersAndColors = colorsTuple + numbersTuple
print(numbersAndColors)
実行結果:
('red', 'green', 'blue', 'orange', 1, 2, 3, 4)
-
Python|リストから空のタプルを削除する方法
はじめにPythonでは、タプルのリストから空のタプルを取り除きたい場面があります。そんなときは、シンプルなループやリスト内包表記を使うことで簡単に実現できます。まず前提として、リストは整数・浮動小数点数・文字列など、さまざまなデータ型の値をまとめて格納できる柔軟なデータ構造です。また「タプルのリスト」とは、リストの中に複数のタプルが入っているデータ構造のことを指します。以下に具体的な実装例を示します。実装例def remove_empty(my_tuple): my_tuple = [t for t in my_tuple if t] re
-
Pythonでタプルのタプル(ネストしたタプル)内に特定の要素が存在するか確認する方法
Pythonでは、タプルの中にさらにタプルを格納する「ネスト構造」を作ることができます。このようなタプルのタプル(入れ子になったタプル)の中に、特定の値が要素として含まれているかどうかを調べたい場面はよくあります。本記事では、その確認方法を2つのアプローチから解説します。方法1:any() 関数を使うany() 関数を使うと、forループと組み合わせて、各サブタプルの中に目的の値が存在するかどうかを効率的にチェックできます。条件式全体を if 文と else 節で囲むことで、結果に応じた処理を簡潔に記述できます。コード例Atuple = [(Mon,10),(Tue,8),(Wed,8),(T