Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのタプルに要素を追加する方法【リスト変換と連結のテクニック】

Pythonのタプルは変更不可(イミュータブル)なオブジェクト

Pythonのタプル(tuple)はイミュータブル(変更不可)なオブジェクトです。そのため、append()のような要素を追加・変更しようとする操作は許されず、直接実行するとエラーが発生します。

しかし、一度タプルをリストに変換して操作した後、再びタプルへ戻すという方法を使えば、結果的に「タプルへ要素を追加した状態」を実現できます。

タプルへの要素追加の手順

具体的には、以下の2つの組み込み関数を使用します。

  • list(): タプルをリストに変換する
  • tuple(): リストをタプルに変換する

まず list() 関数でタプルをリストに変換します。リストは可変(ミュータブル)なので、自由に append() メソッドで要素を追加できます。その後、tuple() 関数でリストを再びタプルに戻せば完成です。

サンプルコード

>>> T1 = (10, 50, 20, 9, 40, 25, 60, 30, 1, 56)
>>> L1 = list(T1)
>>> L1
[10, 50, 20, 9, 40, 25, 60, 30, 1, 56]
>>> L1.append(100)
>>> T1 = tuple(L1)
>>> T1
(10, 50, 20, 9, 40, 25, 60, 30, 1, 56, 100)

出力結果を見ると、元のタプルの末尾に新しい要素「100」が追加されたタプルが得られていることが確認できます。

別の方法:+演算子によるタプルの連結

リスト経由以外にも、「+」演算子でタプル同士を連結することで、新しい要素を含むタプルを作成できます。

>>> T1 = (10, 50, 20)
>>> T2 = T1 + (100,)
>>> T2
(10, 50, 20, 100)

この場合も元のタプル自体は変更されず、新しくタプルオブジェクトが生成される点に注意してください。要素が1つだけのタプルを作る場合は、(100,) のように末尾にカンマが必要です。

まとめ

タプルはイミュータブルなため直接要素を追加できませんが、「list() でリスト化 → append() で追加 → tuple() でタプルに戻す」という手順で、実質的に要素を追加することが可能です。なお、頻繁に要素の追加・削除を行うデータを扱う場合は、最初からリストを使用する方がシンプルで効率的です。

  1. Pythonでリストに要素を追加する方法:append・insert・extendの使い方を解説

    Pythonでは、リストに新しい要素を追加する方法がいくつか用意されています。目的に応じてappend()、insert()、extend()の3つのメソッドを使い分けることで、効率的にリストを操作できます。この記事では、それぞれのメソッドの特徴と具体的な使い方をサンプルコード付きで解説します。1. append():リストの末尾に要素を追加するリストの末尾に単一の要素を追加したい場合は、append()メソッドを使います。引数として渡したオブジェクト1つが、メソッドを呼び出したリストの最後に追加されます。サンプルコードmy_list = [2, 3, 1, -4, -1, -4] my_li

  2. Pythonでタプルを定義するには?基本の作成方法をわかりやすく解説

    Pythonにおけるタプルとはタプル(tuple)は、Pythonの標準データ型のひとつで、複数のオブジェクトを順序付けて格納できるイミュータブル(変更不可)なシーケンスです。リストとよく似ていますが、一度作成した後は要素の追加・削除・変更ができないという点が大きな特徴です。タプルの基本的な定義方法タプルオブジェクトは、1つ以上のオブジェクトをカンマ(,)で区切って並べるだけで作成できます。各要素は必ずしも同じ型である必要はなく、整数・文字列・浮動小数点数・真偽値など、異なる型のオブジェクトを自由に混在させることができます。また、コレクション全体を丸括弧 ( ) で囲むこともできますが、これは