【Python】タプル(tuple)とは?
投稿日 :
前提
Python: 3.12
タプルとは?
タプルは、複数の要素をカンマ区切りで囲んで作成するデータ構造だ。リストと同様に、様々なデータ型の要素を格納できるという特徴を持つ。
example_tuple = (1, "apple", 3.14)
print(example_tuple)
# 出力結果: (1, "apple", 3.14)
上記コードのように、整数、文字列、浮動小数点数など、異なるデータ型の要素を一つのタプルに格納することができる。
リストとの違い: イミュータブルであるということ
タプルとリストの最大の違いは、イミュータブルであるかどうか、という点にある。イミュータブルとは、一度作成した後に要素の変更や削除ができないという性質のことだ。
リストはミュータブルなデータ構造であるため、要素の変更や削除が可能だが、タプルはそれができない。以下のコードを見てみよう。
# リストの場合
example_list = [1, 2, 3]
example_list[0] = 10
print(example_list)
# 出力結果: [10, 2, 3]
# タプルの場合
example_tuple = (1, 2, 3)
example_tuple[0] = 10
# エラー発生: 'tuple' object does not support item assignment
リストは要素の変更が可能だが、タプルはエラーが発生することがわかる。
タプルを使うメリット
では、なぜイミュータブルなタプルを使う必要があるのだろうか?それは、プログラムの安全性と効率性を高めることができるからだ。
安全性の向上
タプルを使用することで、意図しないデータの変更を防ぎ、プログラムの安定性を高めることができる。特に、関数の引数や戻り値としてデータを渡す場合に有効だ。
効率性の向上
タプルはリストに比べて処理が高速である。これは、タプルがイミュータブルであるため、Pythonインタープリタが内部的に最適化を行えるためだ。大量のデータを扱う場合、タプルを使用することで処理速度の向上を見込める。
タプルの使いどころ
タプルの特性を踏まえると、以下のような場面で特に有効活用できるだろう。
- 関数の戻り値として複数の値を返す場合: 複数の値をまとめて扱い、意図しない変更を防ぐことができる。
- 辞書のキーとして使用する場合: イミュータブルな性質から、辞書のキーとして安全に利用できる。
- 設定ファイルなどの変更を許可したくないデータの格納: データの整合性を保ち、予期せぬエラーを防ぐことができる。
関連記事
-
【Python】Pythonでソートする方法前提 Python: 3.12 Pythonにおけるソートの基礎: sort() vs sorted() Pythonでソートを行うには、主にsort()とsorted()の2つの関数が利用できる。
-
【Python】Profileでボトルネックを見つけてコードを改善Python高速化の鍵: cProfileでボトルネックを見つけてコードを改善 Pythonは使いやすさが魅力だが、実行速度が課題となるケースも
-
【Python】グローバル変数の使い方グローバル変数とは? その定義と基本的な使い方 Pythonプログラミングにおいて、変数のスコープは極めて重要な概念だ。その中でも、関数の内外を
-
【Python】入力を受け付ける方法 input()関数の使い方前提 Python: 3.12 input()関数の基本的な使い方 input()関数の基本的な使い方は非常にシンプルだ。関数を呼び出すだけで、プログラムの実行が一時
-
【Python】importの仕方前提 Python: 3.12 1. importの基本 まずは、importの基本的な使い方について確認しよう。 Pythonでは、以下のように記述することでモジュールを