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

タプル内のオブジェクトを編集するPythonプログラム

タプル内のオブジェクトを編集したい場合は、シンプルなインデックス指定を利用することで実現できます。

リストは整数、浮動小数点数、文字列など、さまざまなデータ型の値(異種混合データ)を格納できる可変(ミュータブル)なデータ構造です。そのため、タプルの中にリストが含まれている場合、タプル自体は不変(イミュータブル)であっても、そのリストの中身を書き換えることが可能になります。

サンプルコード

my_tuple = (45, 67, [35, 66, 74], 89, 100)
print("The tuple is : ")
print(my_tuple)
my_tuple[2][1] = 63
print("The tuple after changes is : ")
print(my_tuple)

実行結果

The tuple is :
(45, 67, [35, 66, 74], 89, 100)
The tuple after changes is :
(45, 67, [35, 63, 74], 89, 100)

解説

  • まず、リストを含むタプルを定義し、その内容をコンソールに表示します。
  • タプルは不変(イミュータブル)なデータ型ですが、タプル内にリストが含まれている場合、そのリストの要素は変更できます。
  • これは、リスト自体が可変(ミュータブル)なデータ型であるためです。タプルが保持しているのはリストへの参照であり、参照先のリストの中身までは固定されません。
  • 「my_tuple[2][1]」のように、タプルのインデックスでリストにアクセスし、さらにリスト内のインデックスを指定することで、特定の要素だけを書き換えています。
  • 変更後のタプルの内容がコンソールに出力され、リスト内の値が更新されていることが確認できます。

注意点

このようにリストを含むタプルは内容が変化しうるため、ハッシュ不可能(unhashable)なオブジェクトとして扱われます。そのため、辞書(dict)のキーや集合(set)の要素として使用することはできません。辞書のキーなどに使いたい場合は、すべての要素が不変であるタプルを使用してください。

  1. Pythonで3Dリスト(3次元配列)を作成する方法【サンプルコード付き】

    3Dリストとは、いわゆる3次元配列のことです。本記事では、Pythonで3Dリストを作成し、その内容を整形して出力するプログラムを解説します。ここでは例として、文字列「*」を初期値とする3×2×2の3次元リストを生成しますが、仕組みを理解すれば整数など任意の要素を持つ配列にも簡単に応用できます。 3Dリストのイメージ 3次元リストは、リストの中にリスト、さらにその中にリストが入った多段構造のデータです。たとえば、3×3×2の3Dリストは次のように表現できます。 [[1,1,1],[2,2,2],[3,3,3]], [[4,4,4],[5,5,5],[6,6,6]] アルゴリズム ステップ1:

  2. 【Python入門】リスト・タプル・辞書の違いを徹底解説

    Pythonの3大コレクション:リスト、タプル、辞書 Pythonには複数のデータをまとめて扱うためのコレクション型が用意されています。中でもよく使われるのがリスト(list)、タプル(tuple)、辞書(dict)の3つです。それぞれ特徴が異なるため、用途に応じて使い分けることが重要です。 基本的な違いの概要 リストとタプルはシーケンス(順序付き)オブジェクトであり、要素を順番に並べて管理します。一方、辞書はキーと値のペアを格納するハッシュテーブル構造です。 リストとタプルは「順序を持つコレクション」ですが、辞書は「順序を持たないコレクション」として扱われます。 リストと辞書はミュータブ