1. はじめに
この記事では「Python|tuple()関数の使い方」について解説します。
tuple()関数は、Pythonでタプル(tuple型オブジェクト)を作成するための組み込み関数です。
タプルはリストと似ていますが変更不可(イミュータブル)であり、データの安全性を保ちたいときや辞書のキーとして使いたいときに役立ちます。
本記事を読むことで、次のポイントを学ぶことができます。
- tuple()関数の基本的な使い方
- リストや文字列からタプルを作成する方法
- 実務やプログラミング学習で役立つ応用例
- 初心者がつまずきやすい注意点
2. Python|tuple()関数の基本解説
まずはtuple()関数の基本的な使い方を見ていきましょう。
tuple()関数は以下のように使います。
# 空のタプルを作成
t1 = tuple()
print(t1)
# リストからタプルを作成
t2 = tuple([1, 2, 3])
print(t2)
# 文字列からタプルを作成
t3 = tuple("Python")
print(t3)
実行結果:
()
(1, 2, 3)
('P', 'y', 't', 'h', 'o', 'n')
このように、tuple()
関数は引数に与えられたオブジェクトをタプルに変換して返します。
引数を省略すると空のタプル()
が返ります。
3. よくある使い方・応用例
3-1. リストをタプルに変換
リストをタプルに変換することで、データを変更不可にできます。
これは「設定値」や「固定データ」を扱う場面で有効です。
# リストを定義
fruits = ["apple", "banana", "cherry"]
# タプルに変換
fruits_tuple = tuple(fruits)
print(fruits_tuple)
実行結果:
('apple', 'banana', 'cherry')
3-2. タプルを辞書のキーに使う
タプルは変更できないため、辞書のキーとして利用できます。
これは緯度・経度や座標など「変わらない組み合わせ」を表現する場合に便利です。
# タプルをキーにして辞書を作成
locations = {
(35.6895, 139.6917): "Tokyo",
(34.6937, 135.5023): "Osaka"
}
print(locations[(35.6895, 139.6917)])
実行結果:
Tokyo
3-3. zip()と組み合わせて複数データをまとめる
tuple()はzip()
関数と組み合わせることで、複数のリストをタプルの形にまとめられます。
names = ["Alice", "Bob", "Charlie"]
scores = [85, 92, 78]
# zipで名前とスコアをペアにする
result = tuple(zip(names, scores))
print(result)
実行結果:
(('Alice', 85), ('Bob', 92), ('Charlie', 78))
このように、タプルはデータをまとめて扱うのに非常に便利です。
特に実務では「複数の値をペアにして管理」するケースが多いため、知っておくと効率的です。
4. 注意点・エラー対策
4-1. タプルは変更できない
タプルはイミュータブル(変更不可)です。
次のように値を変更しようとするとエラーが発生します。
t = (1, 2, 3)
t[0] = 10 # 値を変更しようとする
実行結果:
TypeError: 'tuple' object does not support item assignment
もし要素を変更したい場合は、一度リストに変換してから操作すると良いです。
4-2. 要素が1つのタプルに注意
タプルを作成するとき、要素が1つだけの場合はカンマを忘れないようにしましょう。
t1 = (5) # これはタプルではなく整数
t2 = (5,) # カンマをつけるとタプルになる
print(type(t1))
print(type(t2))
実行結果:
<class 'int'>
<class 'tuple'>
このように、タプルを正しく作成するには要素が1つのときに「カンマ ,」を忘れないことが大切です。
4-3. tuple()はイテラブルを受け取る
tuple()関数はイテラブル(リスト、文字列、辞書など)を受け取ります。
単一の整数や浮動小数点を渡すとエラーになるので注意しましょう。
# エラー例
t = tuple(123) # intはイテラブルではない
実行結果:
TypeError: 'int' object is not iterable
5. まとめ
本記事ではPythonのtuple()関数の使い方について解説しました。
重要なポイントを振り返ります。
tuple()
関数でリストや文字列をタプルに変換できる- タプルはイミュータブル(変更不可)で安全性が高い
- 辞書のキーや座標データ、固定データに便利
- 要素が1つのタプルは「カンマ ,」を忘れないこと
実務では「固定データの管理」「複数の値をまとめて扱う」「辞書のキーとして利用」など幅広く使われています。
初心者のうちは「リストとタプルの違い」を意識して学習すると理解が深まります。
tuple()関数を正しく使いこなして、より効率的なPythonプログラミングを目指しましょう!