プログラミングではデータを扱いますが、たくさんのデータを一つ一つ変数に代入しておくのは大変ですし、見にくいコードになってしまいます。
そんな不安を解消するのがコンテナです。今回はPythonのコンテナ3種類「リスト・タプル・辞書」の基本を紹介していきます。
コンテナとは?
コンテナとはデータを格納するための入れ物のことです。より正確な定義はオブジェクトを格納するための入れ物です。
初心者のうちは「オブジェクト」が何かわからなくても大丈夫です。「オブジェクト=データ」と考えておきましょう。この記事でも「データ」という言葉を使って説明します。
Pythonにはリスト・タプル・辞書が有名なコンテナとして挙げられます。他にもスタックやキューと言われるコンテナもありますが、今回は簡単のために省きます。
インデックス
コンテナに格納されたデータはインデックスで管理されます。最初の要素を0として順に増えていきます。
インデックスで管理されるデータのことをシーケンスと言います。リスト・タプル・文字列などがそれに分類されます。ただ、辞書はキーとバリューのペアで管理されるのでマッピングと言われます。
リストとは?
リストとはデータを順番に格納する箱のことです。データの削除や追加をすることができます。
リストを定義するときは以下のように角カッコ’[]’を使います。リストに格納したいデータをカンマで区切って書きます。
1 2 3 4 5 6 7 8 |
#いろんなデータを格納できる alone = [0] numbs = [1, 2, 3] words = ['Hello', 'World'] mixtu = [1, 100, 'Ai', '200'] #空のリスト empty = [] |
どんなデータでも格納できますが、その種類によってはソート(並び替え)できない場合があります。
リストのように変更可能なデータ型をミュータブル(mutable)と言います。
Pythonで一番最初に習うコンテナのリストについて詳しく解説していきます。リストの定義から基本のインデックスや結合する方法。最後に要素数を確認する方法も紹介します。 リストの要素数を確認できるようになるとfor文でもリストを使うこ[…]
Pythonのコンテナの一つであるリストに関して詳しく見ていきましょう。リストを自由に操作するためのメソッド11個の使い方を解説します。 メソッドとは? メソッドとはあるデータ型専用の関数のことです。なので、以下で紹介してるメ[…]
Pythonでリストをつくるときにわざわざデータを一つ一つ入力していくのはメンドウですね。そこで今回はより簡単にリストを作る方法を紹介します。 リストの中に直接for文やif文を書くことで条件付きの値をリストに格納することができます[…]
タプルとは?
タプルとはリストと似たデータを格納する箱のことですが、リストと異なる点は「データの変更ができない」ということです。
タプルの定義には以下のように丸カッコ’()’を使います。リスト度同じようにカンマで区切ってデータを入力します。2行目のようにタプル内のデータが1つだけのときはカンマが必要です。
1 2 3 4 5 6 7 8 |
#いろんなデータを格納できる alone = (0,) numbs = (1, 2, 3) words = ('Hello', 'World') mixtu = (1, 100, 'Ai', '200') #空のタプル empty = () |
タプルのように変更不可能なデータ型をイミュータブル(immutable)と言います。
Pythonのコンテナの一つにタプルがあります。タプルは要素の変更ができないデータとして扱われています。 ですが、どうしても変更したくなった場合はリストに変換してから、追加や削除を行いタプルに戻すことになります。 今回はその内[…]
Pythonでリストやタプルをスライスするときの書き方を紹介してます。スライスとは何かやインデックスの覚え方も解説しています。 スライスとは? リストのスライスとはリストを指定したインデックスで区切ることです。文字列に対して行[…]
辞書とは?
辞書はキーとバリューという2つのデータの組で格納する箱です。キーとバリューが結び付けられています。
辞書の定義には以下のように波カッコ’{}’を使い「キー : バリュー」の形でカンマ区切りで入力していきます。
1 2 3 4 5 6 |
#いろんなデータを格納できる alone = {'name':'Tom'} sample = {'name':'Tom', 'tall':180, 'weight':75} #空の辞書 empty = {} |
辞書も変更可能なデータ型なのでミュータブルと言われます。
Pythonのコンテナで有名な辞書の使い方を解説していきます。リストやタプルと異なるところや、キー・バリューの意味、要素を追加・削除する方法などです。 辞書とは? 辞書の定義&書き方 辞書は波カッコ({})で書く「(キー[…]
Pythonの辞書にはキーとバリューのペアでデータが格納されています。それらのデータを自由に取り出すために使えるメソッドを紹介します。 以下のメソッドを使うとfor文で辞書を自由に使うことができます。その関連記事は最後に紹介していま[…]
セットとは?
セットとは集合のことで、順番がないデータの集まりのことを言います。
セットの定義は以下のように波カッコ’{}’を使います。
1 2 3 4 5 6 7 8 |
#いろんなデータを格納できる alone = {0} numbs = {1, 2, 3} words = {'Hello', 'World'} mixtu = {1, 100, 'Ai', '200'} #空のセット empty = {} |
セットも変更可能なデータ型なのでミュータブルと言われます。
コンテナの使いどころ
以上のコンテナはfor文でよく使われます。ループ処理の中でコンテナに格納されているデータを一つ一つ取り出すことができます。
for文で辞書を扱うときに、キーだけを取り出したいときやバリューも一緒に取り出したいときなど出てくると思います。 そこで、今回はメソッドや関数を使って辞書からいろいろなデータを取り出すときに使うkeys()メソッド、values()[…]
ループ処理に使われるfor文で、リストやタプルからインデックスと要素を取り出したいときに使う構文を紹介します。 この記事ではリストを例にコードを紹介していますが、タプルに置き換えても同じことができます。 for文の基本的な使い[…]
まとめ
- リスト:順番にデータを格納する
- 角カッコ’[]’で定義する
- データの変更が可能(ミュータブル)
- タプル:順番にデータを格納する
- 丸カッコ’()’で定義する
- データの変更不可
- 辞書:キーとバリューにペアで格納
- 波カッコ’{}’で「キー = バリュー」で定義する
- データの変更が可能(ミュータブル)
- セット:順番がないデータの集まり
- 波カッコ’{}’で定義する
- データの変更が可能(ミュータブル)
プログラミング言語のなかでも人気の高いPythonを学習する教材を紹介します。 最近ではプログラミングスククールがたくさんあるので迷うと思います。 ですが、まずは無料教材から始めてみましょう。苦労した分だけ力がつきます。 […]