0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Python】毎週勉強するシリーズ ~タプル~

Last updated at Posted at 2025-02-27

概要

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入門 - リスト・タプル・辞書 の辞書を理解する。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?