概要
AI が流行ってる昨今 Python は必須級のスキルになってきてます。
時代に取り残されないようにコツコツと Python を勉強しようと思います!
三日坊主にならないように Qita でアウトプットしながら進めます💪
今日やること
とほほのPython入門 - リスト・タプル・辞書 のタプルを理解する。
タプル(tuple)
1. 基本的な書き方
(...)
でタプルを表します。
タプルはリストとほぼ同じように使用できますが、要素を変更できない点が異なります。
a = (10, 20, 30, 40)
2. 要素がひとつだけな場合の書き方
要素がひとつだけの時は、最後にカンマ(,)を記述する必要があります。
a = (10) # タプルではなく数値の10となる
a = (10,) # タプルの(10,)となる
これはちょっと混乱しますね…
個人的な解釈としては、「()
で囲まれたものがタプル」というより「カンマで区切られたもの」と捉える方が腑に落ちます。
気になって調べたら、()
は省略できるらしく解釈は合っているみたいです。
a = 10, 20, 30, 40
3. タプル要素を変更する
リスト要素と違って、タプル要素を変更することはできません。
a1 = [10, 20, 30, 40]
a2 = (10, 20, 30, 40)
a1[2] = 60 # 代入できる
a2[2] = 60 # エラーとなり、TypeError例外が発生する
4. タプルをリストに変換する
タプルからリストに変換するには list()
を使います。
print(list((1, 2, 3))) #=> [1, 2, 3]
5. リストをタプルに変換する
リストからタプルに変換するには tuple()
を使います。
print(tuple([1, 2, 3])) #=> (1, 2, 3)
関数の戻り値としてタプルを返却する
関数の戻り値としてタプルを返却することもできます。
def get_date():
return 2022, 10, 9
year, month, day = get_date()
print("%04d/%02d/%02d" % (year, month, day)) # 2022/10/09
ふむふむ。JavaScript で言う分割代入ですね。
これは慣れているのでイメージつきやすいです。
const [year, month, day] = [2022, 10, 9]
console.log(`${year}/${month}/${day}`) // 2022/10/09
感想
今日はタプルをやってみました!
リストとタプルの違いは以下であると分かりました。
- リスト:動的な配列。値や要素数の変更が可能。
- タプル:静的な配列。値や要素数は固定で変更不可。
使い分けは「変更する必要があるか」を基準に考えれば特に問題なさそうですね👀
今回も見ていただきありがとうございました。
また次回お会いしましょう!!
次回やること
とほほのPython入門 - リスト・タプル・辞書 の辞書を理解する。