Pythonのコンテナ4種類「リスト・タプル・辞書・セット」とは?

プログラミングではデータを扱いますが、たくさんのデータを一つ一つ変数に代入しておくのは大変ですし、見にくいコードになってしまいます。

そんな不安を解消するのがコンテナです。今回はPythonのコンテナ3種類「リスト・タプル・辞書」の基本を紹介していきます。

コンテナとは?

コンテナとはデータを格納するための入れ物のことです。より正確な定義はオブジェクトを格納するための入れ物です。

初心者のうちは「オブジェクト」が何かわからなくても大丈夫です。「オブジェクト=データ」と考えておきましょう。この記事でも「データ」という言葉を使って説明します。

Pythonにはリスト・タプル・辞書が有名なコンテナとして挙げられます。他にもスタックやキューと言われるコンテナもありますが、今回は簡単のために省きます。

インデックス

コンテナに格納されたデータはインデックスで管理されます。最初の要素を0として順に増えていきます。

インデックスで管理されるデータのことをシーケンスと言います。リスト・タプル・文字列などがそれに分類されます。ただ、辞書はキーとバリューのペアで管理されるのでマッピングと言われます。

リストとは?

リストとはデータを順番に格納する箱のことです。データの削除や追加をすることができます。

リストを定義するときは以下のように角カッコ’[]’を使います。リストに格納したいデータをカンマで区切って書きます。

どんなデータでも格納できますが、その種類によってはソート(並び替え)できない場合があります。

リストのように変更可能なデータ型をミュータブル(mutable)と言います。

関連記事

Pythonで一番最初に習うコンテナのリストについて詳しく解説していきます。リストの定義から基本のインデックスや結合する方法。最後に要素数を確認する方法も紹介します。 リストの要素数を確認できるようになるとfor文でもリストを使うこ[…]

Pythonのリストとは?インデックス・要素数・結合する方法を解説
関連記事

Pythonのコンテナの一つであるリストに関して詳しく見ていきましょう。リストを自由に操作するためのメソッド11個の使い方を解説します。 メソッドとは? メソッドとはあるデータ型専用の関数のことです。なので、以下で紹介してるメ[…]

Pythonのリストに使えるメソッド11個「追加・削除・ソート」
関連記事

Pythonでリストをつくるときにわざわざデータを一つ一つ入力していくのはメンドウですね。そこで今回はより簡単にリストを作る方法を紹介します。 リストの中に直接for文やif文を書くことで条件付きの値をリストに格納することができます[…]

Pythonのリストで内包表記する方法「for・if・lambdaの書き方」

タプルとは?

タプルとはリストと似たデータを格納する箱のことですが、リストと異なる点は「データの変更ができない」ということです。

タプルの定義には以下のように丸カッコ’()’を使います。リスト度同じようにカンマで区切ってデータを入力します。2行目のようにタプル内のデータが1つだけのときはカンマが必要です

タプルのように変更不可能なデータ型をイミュータブル(immutable)と言います。

関連記事

Pythonのコンテナの一つにタプルがあります。タプルは要素の変更ができないデータとして扱われています。 ですが、どうしても変更したくなった場合はリストに変換してから、追加や削除を行いタプルに戻すことになります。 今回はその内[…]

Pythonのタプルとは?追加・削除・結合・リストに変換する方法
関連記事

Pythonでリストやタプルをスライスするときの書き方を紹介してます。スライスとは何かやインデックスの覚え方も解説しています。 スライスとは? リストのスライスとはリストを指定したインデックスで区切ることです。文字列に対して行[…]

Pythonのリスト・タプルをスライスする方法とインデックスの覚え方

辞書とは?

辞書はキーとバリューという2つのデータの組で格納する箱です。キーとバリューが結び付けられています。

辞書の定義には以下のように波カッコ’{}’を使い「キー : バリュー」の形でカンマ区切りで入力していきます。

辞書も変更可能なデータ型なのでミュータブルと言われます。

関連記事

Pythonのコンテナで有名な辞書の使い方を解説していきます。リストやタプルと異なるところや、キー・バリューの意味、要素を追加・削除する方法などです。 辞書とは? 辞書の定義&書き方 辞書は波カッコ({})で書く「(キー[…]

Pythonの辞書とは?追加・削除・上書きする方法
関連記事

Pythonの辞書にはキーとバリューのペアでデータが格納されています。それらのデータを自由に取り出すために使えるメソッドを紹介します。 以下のメソッドを使うとfor文で辞書を自由に使うことができます。その関連記事は最後に紹介していま[…]

Pythonの辞書に使えるメソッド5個(keys・values・items・get・setdefault)

セットとは?

セットとは集合のことで、順番がないデータの集まりのことを言います。

セットの定義は以下のように波カッコ’{}’を使います。

セットも変更可能なデータ型なのでミュータブルと言われます。

コンテナの使いどころ

以上のコンテナはfor文でよく使われます。ループ処理の中でコンテナに格納されているデータを一つ一つ取り出すことができます。

関連記事

for文で辞書を扱うときに、キーだけを取り出したいときやバリューも一緒に取り出したいときなど出てくると思います。 そこで、今回はメソッドや関数を使って辞書からいろいろなデータを取り出すときに使うkeys()メソッド、values()[…]

Pythonのfor文で辞書を扱う方法
関連記事

ループ処理に使われるfor文で、リストやタプルからインデックスと要素を取り出したいときに使う構文を紹介します。 この記事ではリストを例にコードを紹介していますが、タプルに置き換えても同じことができます。 for文の基本的な使い[…]

Pythonのfor文とenumerate関数

まとめ

  • リスト:順番にデータを格納する
    • 角カッコ’[]’で定義する
    • データの変更が可能(ミュータブル)
  • タプル:順番にデータを格納する
    • 丸カッコ’()’で定義する
    • データの変更不可
  • 辞書:キーとバリューにペアで格納
    • 波カッコ’{}’で「キー = バリュー」で定義する
    • データの変更が可能(ミュータブル)
  • セット:順番がないデータの集まり
    • 波カッコ’{}’で定義する
    • データの変更が可能(ミュータブル)

関連記事

プログラミング言語のなかでも人気の高いPythonを学習する教材を紹介します。 最近ではプログラミングスククールがたくさんあるので迷うと思います。 ですが、まずは無料教材から始めてみましょう。苦労した分だけ力がつきます。 […]

【独学】Pythonを学習できる無料&有料教材7選