本記事ではpythonの辞書型とタプルについて学んでいきます。
これらは通常のリストとは少し性質が異なるものです。
辞書型とタプルを使いこなせるようになると、より効率的で可読性に優れたプログラムを書けるようになります。
少し難しいかもしれませんが、初心者でもなるべく分かりやすいように説明していくので、実際にコードを書きながら覚えていきましょう。
目次
Pythonの辞書型を学ぶ
Pythonの辞書型について説明していきます。
辞書型とは何か、辞書型の操作方法について学んでいきましょう。
辞書型とは?
辞書型とは、keyとvalueの組み合わせで構成されるリストのことです。
普通のリストはvalueしかありませんが、辞書型はそれぞれのvalueにkeyが付加されています。
普通のリストはでは要素の番号を指定して、要素(value)を取り出しますよね。
辞書型ではkeyを指定することによって、要素を呼び出せます。
この性質は実はとても便利なのです。
なぜなら番号を指定するより、具体的なkeyを指定するやり方の方が、データを管理しやすいからです。
また、できるだけ辞書型を使うようにした方が、可読性に優れたコードに仕上がります。
辞書型の作り方・使い方
辞書型の作り方を見ていきましょう。
と言っても普通のリストの作り方が分かるのなら、そこまで難しくはありません。
辞書型は以下のようにkey:valueの形で要素を並べていけば良いです。
Taro = {"age" : 18, "gender" : 男}
例では太郎の年齢と性別を格納したリストを作成しています。
注意点としては、辞書型を作る場合は[]ではなく{}で括って下さい。
Pythonではそういうお約束になっています。
辞書型から特定のデータを取り出す場合は、以下のようにkeyを指定します。
Taro = {"age" : 18, "gender" : "男"} print(Taro['age'])
これで太郎と年齢のデータのみが表示されるようになりました。
これが辞書型の基本です。
辞書型の操作方法
辞書型の操作方法について説明していきましょう。
全部を説明するのは難しいですが、ここでは基本的な
- 追加
- 削除
の機能を使えるようにしましょう。
辞書型にデータを追加する場合はリストのようにappendは使えません。
という訳でデータを追加する際は、以下のようにkeyとvalueを指定して直接追加しましょう。
Taro = {"age" : 18, "gender" : "男"} Taro['from'] = "日本" print(Taro)
これで太郎と出身(from)が日本だというデータが格納されました。
辞書型のデータを1つ削除する場合はpopというメソッドを使います。
Taro = {"age" : 18, "gender" : "男"} Taro.pop('age') print(Taro)
これで辞書から年齢のデータが削除されましたね。
以上が辞書型操作の基本となります。
Pythonのタプルを学ぶ
Pythonのタプルについて説明していきます。
タプルとは何か、タプルの操作方法について学んでいきましょう。
タプルとは?
タプルとは、リスト型と同じく複数の要素を管理するデータ型のことです。
リスト型と違う点は、
- 要素を追加したり削除したりすることができない
- リスト型よりも処理が早い
と言った点です。
タプル型は、データを変更することが一切できません。
「そんな不便なもの、本当に必要なの?」と思うかもしれません。
ですが、一度指定したデータを変更できないというのは、実は大きなメリットなのです。
巨大なプログラムを作るとき、1つのファイルに全てのプログラムを書くのではなく、管理しやすいよう複数のファイルに分けることもあります。
そのときAというファイルでデータを指定し、Bのファイルでそのデータを扱うということがあります。
その際、Aで指定したデータを書き換えて良いのか、分からなくなってしまうことがあります。
間違えて変えてしまった結果、プログラムが大きく狂うこともあるかもしれません。
そんなときタプル型を使っていれば、書き換えてはいけないプログラムであることが瞬時にわかりますね。
巨大なプログラムを作るとき、タプル型は重宝することになります。
また少しだけですが、リスト型よりもタプル型の方が処理速度が速いです。
タプルの作り方・使い方
タプルは作り方自体はすごく簡単です。
リストは[ ]でくくりましたが、タプルは()で括ります。
以下のように定義します。
data = (1,2,3,4,5)
タプルからデータを取り出すのは、リスト型と同じやり方で良いです。
data = (1,2,3,4,5) print(data[2])
これで2番目の要素が取り出せるようになりました。
タプルの操作方法
先程解説した通り、タプルはデータの変更することができません。
タプル型に対してappendやpopを使うとエラーが発生します。
ですが、タプル型をリスト型に変更することなら可能です。
リスト型に変更するには、以下のようにlistを使います。
data = (1,2,3,4,5) data_tmp = list(data)
リスト型に変換してしまえば、後は自由に操作することができますね。
data = (1,2,3,4,5) data_tmp = list(data) data_tmp.append(6) print(data_tmp)
逆にリスト型をタプル型に変換することも可能です。
その場合はtupleというメソッドを使いましょう。
data = [1,2,3,4,5] data_tmp = tuple(data) data_tmp.append(6) print(data_tmp)
タプル型に変更すると、appendが使えなくなり、エラーが発生します。
まとめ
本記事は辞書型とタプル型について解説しました。
リスト型と比べて少し複雑かもしれませんが、少しずつ慣れていくようにしましょう。
特にタプル型はPythonならではのデータ型なので、他の言語を勉強した方でもつまずきやすい所です。
辞書型とタプル型は今はまだ必要性を感じないかもしれませんが、Pythonで本格的に開発を行なうようになったら、必ず使うものです。
今のうちに覚えておきましょう。
分からなくなった場合は、基本的なことから復習していくようにしましょう。