Python学習メモ - その5
まえがき
最近、Python を勉強し始めたので、その学習メモです。
今回はタプル(Tuple)についてです。
タプル(Tuple)
プログラミングをしていると、複数のデータをまとめて扱いたいときがあります。
例えば、座標などがそうです。
座標は、x軸とy軸(3次元の場合にはz軸)が合わさって意味のあるのデータになります。
タプルを使うことでそういった複数のデータを扱いやすくなります。
x = 1 y = 2 z = 3 tuple_value = (x, y, z) print(tuple_value)
実行結果
(1, 2, 3)
タプルは、一度宣言すると値の追加や変更・削除ができません。
こういったデータのことをイミュータブル(不変)であると言います。
そのため、タプルは入力データや計算途中で使われる一時的なデータなど、勝手に改変されたくないデータに使用されることが多いです。
タプル定義 & アクセス
タプルは複数のデータをカンマ( , )で区切ることで定義することができます。
前後のカッコ「( )」はつけなくても良いのですが、わかりやすくするためにつけられることが多いです。
タプルで定義したデータの各要素へのアクセスは"[i]"で行います。
インデックス i は 0 〜 n-1 (n : 要素数)となります。
※ タプルの要素へのアクセスは0ベースインデックスとなります
tuple_values = (1, 2, 3) print(tuple_values) print(tuple_values[0]) print(tuple_values[1]) print(tuple_values[2])
実行結果
(1, 2, 3) 1 2 3
複数型
タプルには複数のデータ型の値を混在させることができます。
tuple_values = (1, 3.14, "tuple") print(tuple_values) print(tuple_values[0]) print(tuple_values[1]) print(tuple_values[2])
実行結果
(1, 3.14, 'tuple') 1 3.14 tuple
インデックス検索
タプルの各要素から、特定の値が含まれているインデックス番号を取得するには、index()メソッドを使用します。
ただし、同じ値が複数含まれている場合、最初に見つかったインデックス番号が返されます。
tuple_values = (1, 2, 3, 1, 2, 3) index = tuple_values.index(3) print(index)
実行結果
2
指定要素数取得
タプルに指定した値の要素がいくつ含まれているかを数えるには、count()メソッドを使用します。
tuple_values = (1, 2, 3, 1, 2, 3) count = tuple_values.count(3) print(count)
実行結果
2
全要素数取得
タプルに含まれているすべての要素数を数えたい場合には、len()関数を使用します。
tuple_values = (1, 2, 3, 1, 2, 3) count = len(tuple_values) print(count)
実行結果
6
タプル展開
タプルは、1つの変数として定義することもできますが、複数の変数に展開する事もできます。
(x, y) = (1, 2) print(x, y) tuple_values = (1, 2) (x, y) = tuple_values print(x, y)
実行結果
1 2 1 2
連結
複数のタプルを"+"演算子によって連結することができます。
2つ以上のタプルを"+"演算子で接続すると、連結された新しいタプルが返されます。
tuple1 = (1, 2) tuple2 = (3, 4) tuple3 = tuple1 + tuple2 print(tuple3)
実行結果
(1, 2, 3, 4)
参考文献
Python 公式リファレンス
https://docs.python.org/ja/3.7/index.html
Python-izm
ゲームを作りながら楽しく学べるPythonプログラミング
ゲームを作りながら楽しく学べるPythonプログラミング (Future Coders(NextPublishing))
- 作者: 田中賢一郎
- 出版社/メーカー: インプレスR&D
- 発売日: 2017/03/24
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
エキスパートPythonプログラミング
エキスパートPythonプログラミング 改訂2版 (アスキードワンゴ)
- 作者: Michal Jaworski,TarekZiade,稲田直哉,芝田将,渋川よしき,清水川貴之,森本哲也
- 出版社/メーカー: ドワンゴ
- 発売日: 2018/02/26
- メディア: Kindle版
- この商品を含むブログを見る