UPDATE:2024年09月05日
Python タプル(tuple) インデックス配列 -入門編-
Pythonリファレンス
Python3
目次 [閉じる]
Python にも他の言語と同様に複数の要素を同時に扱う機能があります。リスト(list)、タプル(tuple)、辞書(dict)、集合(set)の4種類です。一般的には配列などとも言います。リスト(list)や タプル(tuple) の場合、例えば 0 ~ 100 までの整数値をインデックスとして各番号に値(要素)を持たせ、100 までのインデックスと要素の組み合わせを1つの容器に格納するようなものです。辞書(dict) の場合、一意のkey(キー) と 値(value)を1つのセットとして各要素を構成します。集合(set)の場合、一意のkey(キー)で各要素を構成します。
Python のタプル(tuple)
タプル(tuple) は リスト(list) と同様に、任意の整数値をインデックスとした要素を順番に管理するシーケンス型のデータです。インデックス配列に近いものです。リスト との違いは、タプル の場合、定義後に要素の追加・変更・削除などが出来ない点です。タプル はイミュータブル(状態の変更が出来ない)なものです。
※シーケンス=順番に並んだ
※シーケンス=順番に並んだ
タプル は要素をインデックスによる順序管理を行う場合に利用するのが良いでしょう。特に順番による管理が必要なければ、集合(set)を利用する方が良い場合もあります。タプル は、ミュータブル(状態を変更できる) な機能です。
タプル(tuple)の作成と取り出し
「( ) (丸括弧)」による作成と取り出し
「( ) (丸括弧)」を使用して タプル を作成できます。格納したい各要素を「,(カンマ)」で区切ります。
タプルの作成
0個のタプルを作成してみます。
1 2 3 | # -*- coding: utf-8 -*- tupleData = () print(tupleData) |
実行結果
()
空の状態のタプルです。
tupleData の型を確認すると、
1 2 3 | # -*- coding: utf-8 -*- tupleData = () print(type(tupleData)) |
実行結果
<class 'tuple'>
tuple と表示されます。
0個以上のタプルを作成して取り出す
文字列を複数格納したタプルを作成します。格納したい各要素を「,(カンマ)」で区切ります。
1 2 3 4 5 | # -*- coding: utf-8 -*- #文字列を複数格納したタプル listData = 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday', #表示 print(listData) |
実行結果
('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
インデックスを指定して取得表示させます。インデックスにマイナス値を指定すると、末尾から数えて取り出します。
1 2 3 4 5 6 | print(tupleData[0]) print(tupleData[1]) print(tupleData[2]) print(tupleData[-1]) print(tupleData[-2]) print(tupleData[-3]) |
実行結果
Monday
Tuesday
Wednesday
Sunday
Saturday
Friday
Tuesday
Wednesday
Sunday
Saturday
Friday
for文で取り出します。
1 2 3 | #for文 for i in listData: print (i) |
実行結果
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
「, (カンマ)」 による作成と取り出し
「( ) (丸括弧)」を使用せず、「, (カンマ)」で区切ってタプルを作成できます。要素が1つの場合は末尾にカンマを付けます。複数の場合は末尾のカンマは省略できます。
要素が1つ
末尾にカンマを付けます。
1 2 3 4 | # -*- coding: utf-8 -*- #要素が1つ tupleData = 'apple', print(tupleData) |
実行結果
('apple',)
要素が複数
各要素をカンマで区切ります。末尾にカンマは必要ありません。
1 2 3 4 | # -*- coding: utf-8 -*- #要素が複数 tupleData = 'apple', 'banana', 'pineapple' print(tupleData) |
実行結果
('apple', 'banana', 'pineapple')
タプル(tuple)の アンパック
タプル の アンパック 機能を使用すれば、値の変換がシンプルに行えます。
1 2 3 4 5 6 7 | # -*- coding: utf-8 -*- ### タプルのアンパック tupleData = 'apple', 'banana', 'pineapple' a, b, c = tupleData print(a) print(b) print(c) |
実行結果
apple
banana
pineapple
banana
pineapple
a b c の型は string です。
tuple() を使って タプル(tuple)への変換
tuple() 関数を使って他のデータ型から タプル を作成できます。
1 2 3 4 5 6 7 8 9 10 11 12 | # -*- coding: utf-8 -*- ### タプルに変換 #リストデータ listData = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] print(listData) print(type(listData)) #タプルに変換 tupleData = tuple(listData) print(tupleData) print(type(tupleData)) |
実行結果
['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
<class 'list'>
('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
<class 'tuple'>
<class 'list'>
('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
<class 'tuple'>
タグ(=記事関連ワード)
タグ: python, python タプル
日付
投稿日:2017年9月10日
最終更新日:2024年09月05日
最終更新日:2024年09月05日
このカテゴリの他のページ
この記事へのコメント
トラックバックurl
https://wepicks.net/python-reference-tuple/trackback/