タプル型は、簡単に言えば要素の追加や削除ができないリスト型と考えてください。
(複数の構成要素からなる組を総称する一般概念がtupleの意味らしいです。)
それなら、リスト型だけでタプル型は必要ないとお考えかもしれませんが、
タプル型は、使用メモリがリストに比べて小さい点や、リストよりも演算が早いメリットがあります。
さらに、要素の追加や削除をしたくない(させたくない)時にも重宝できます。
タプルの使用方法
タプルは全体を丸括弧()で囲って、それぞれの要素を「,」で区切って記述します。
中に格納できる要素はリスト型と同様に制限はありませんので、整数値や文字列などを入れる事が出来ます。
タプルの作成
# うまい棒(d_stick)のタプルを作ります。
>>> d_stick = ('チーズ味','明太子味','カレー味')
# 作成したタプルから値を取り出すときは、「リスト名[添字]」です。
>>> d_stick[2]
>>> 'カレー味'
変更はできないがスライス(一部切り出し)は可能です。
# うまい棒(d_stick)のタプルを作ります。
>>> d_stick = ('チーズ味','明太子味','カレー味')
# 作成したタプルから値をスライスするときは、「リスト名[スタート添字:エンド添字+1]」です。
>>> d_stick[0:3]
>>> ('チーズ味','明太子味')
また要素が一つしかないときは、最後に,をつけないとpythonはタプルとして認識しないので注意してください。
要素が一つしかないときの記述方法
# 間違い例:最後に,をつけないとただの文字列になります。
>>> d_stick = ('チーズ味')
>>> d_stick
>>>'チーズ味'
#正解例:最後に,をつければタプルとなります。
>>> d_stick = ('チーズ味',)
>>> d_stick
>>>('チーズ味',)
タプル型からリスト型への変更はできます。
もしもタプル型に変更を加えたい場合は、リスト型に変更することはできますので、方法を記載します。
# うまい棒(d_stick)のタプルを作ります。
>>> d_stick = ('チーズ味','明太子味','カレー味')
# 作成したタプル型をリスト型に変更する場合は、「list(リスト名)」です。
>>> list(d_stick)
>>> ['チーズ味','明太子味','カレー味']
豆知識:ミュータブル(Mutable)とイミュータブル(Immutable)
ミュータブルは「可変」でイミュータブルは「不変」です。
英語のスペルでもお分かりかと思いますが、ポッシブルとインポッシブルの関係と同じですね。
リスト型は要素の追加や削除が出来るので、ミュータブルです。
タプル型は、一度作成したら変更できないのでイミュータブルです。
このブログでは、英語の和訳的なモノを、例文で「うまい棒」ばかり載せているのと同様にしつこい位に説明しています。
コレにはちゃんと理由があります。
やはり、それぞれの英語の意味をしっかり理解することってプログラムを深く理解する上で重要だと思うんですよね。
使われている英語の意味を分からずに学習していくと、知識の定着に繋がらないと、経験上思うんです。
あくまで英語の意味だけを扱うので、発音については触れません。
その他のデータ型については以下に詳しく掲載しています。