Python|タプルについて学ぼう

Pythonで複数のデータをまとめて扱う方法の1つとしてタプルというものがあります

このページではタプルの基本について解説していきます

他にも下のような方法もありますので合わせて確認してみてください

タプルとは?

タプルとは、複数の項目を1つの変数に格納するためのものです

主にデータのコレクションを格納するために使用されます

タプルを使用する場合は丸括弧”()”を使用して表現します

順序付けされていて、変更することができないですが値を重複させることができます

ますはタプルの基本形をみていきましょう

タプルの基本形

タプル型変数 = (値1, 値2, 値3, …)

タプル型変数 = tuple(値1, 値2, 値3, …)

tuple_sample1 = ("medaka", "kingyo", "koi")
tuple_sample2 = tuple(("medaka", "kingyo", "koi"))

タプルのアイテムについて

タプルの中に格納する値を、タプルのアイテムと呼びます

タプルのアイテムにはいくつかルールがありますのでみていきましょう

タプルのアイテムについて

・各アイテムにはインデックス番号が付与
・アイテム同士の順序は変更できない
・タプルを一度作成すると中身の修正や追加、削除はできない
・アイテム同士が同じ値でも良い

インデックス番号が付与されている

タプルの中に保管される各アイテムはインデックス番号が付与されます

インデックス番号は最初の項目を0として順番に1ずつ加算されていきます

tuple_sample = tuple(("medaka", "kingyo", "koi"))

では実際に動かしてみましょう

今回の例ではタプル型変数tuple_sample“medaka”, “kingyo”, “koi”の順に格納されています

インデックスでは最初から順番に0始まりで付与されているので

0→medaka

1→kingyo

2→koi

といった形で取得することができます

アイテムの順序は変更できない

タプル一度設定すると中身の順番を変更することはできません

そのため中身を編集するというよりも定義や変更不要な固定値などを扱うのに向いています

アイテムの中身は修正できない

タプル一度設定すると中身のアイテムを変更することもできません

同様にアイテムの追加や削除もできないため注意が必要です

アイテムの中身は同じでもOK

タプルインデックス番号で一意に管理されているので、アイテムの中身を重複させることが可能です

tuple_sample = ("medaka", "medaka", "medaka")

こんなことも可能です

タプルの長さを求める

タプルが何個のアイテムを持っているかを調べるには、len()関数を使います。

tuple_sample = tuple(("medaka", "kingyo", "koi"))
print(len(tuple_sample))

では実際に動かしてみましょう

len関数を使用してタプル型の変数からタプルの長さを抽出することができました

今回はタプルの中には“medaka”, “kingyo”, “koi”の3つが含まれていて関数の実行結果でも3が取得できました

1つのアイテムを持つタプルの作成

1つのアイテムを持つタプルを作成するには、アイテムの後にコンマを追加しなければなりません

そうしないと、Pythonタプルとして認識しません。

OKな書き方

one_tuple = (“medaka”,)

NGな書き方

one_tuple = (“medaka”)

タプルのデータ種別

タプルの中に格納できるアイテムは、Pythonで使えるさまざまなデータ型を使用することができます

tuple_string = ("medaka", "kingyo", "koi")
tuple_int = (1, 3, 5, 7, 9)
tuple_bool = (True, False)

また同じタプルの中に異なるデータ型を混在させることも可能です

tuple1 = ("abc", 34, True, 40, "male")

Python側では、タプルデータ型「tuple」を持つオブジェクトとして取り扱われます

tuple_sample = ("medaka", "kingyo", "koi")
type(mytuple)

タプルの初期化

タプルを初期化するときは、tuple()コンストラクタを使ってタプルを作ることも可能です。

tuple_sample = tuple(("medaka", "kingyo", "koi"))
記事が参考になったり、気に入ってもらえたら
ポチッとしてもらえると励みになります!

にほんブログ村 IT技術ブログへ にほんブログ村 IT技術ブログ Pythonへ にほんブログ村 株ブログ つみたてNISAへ
シェアしてもらえるとうれしいです!

コメントを残す

ABOUT US
usimaru
福岡でWindowsアプリケーション開発のお仕事してます。 お金に縛られない生活を目指して日々学んだことをOUTPUTしていきます。 主なテーマ ◆仕事経験から:AWS/Azure/C++/C#/Python/Ruby ◆資産形成に向けて:つみたてNISA/米国株/日本株/仮想通貨/ソーシャルレンディング ◆好きなこと:旅行/温泉/美味しいもの/布団の中 ◆目標:ブログを毎日更新目指します!