Pythonの辞書(dict)型とは?キーと値でデータを扱う基本を解説
Pythonの辞書(dict)は、いわゆるハッシュテーブルの一種です。Perlなどの言語で見られる連想配列やハッシュと同じように動作し、キー(key)と値(value)のペアでデータを管理します。
キーにはほぼすべてのPythonの型を使用できますが、一般的には数値や文字列が使われます。一方、値には任意のPythonオブジェクト(文字列、数値、リスト、タプルなど)を自由に格納できます。
辞書の基本的な使い方
辞書は波括弧({ })で囲んで定義し、各要素へのアクセスや代入には角括弧([ ])を使います。以下に具体的な例を示します。
#!/usr/bin/python3
# 空の辞書を作成
d = {}
d['one'] = "This is one" # キー'one'に文字列を代入
d[2] = "This is two" # キー2(整数)に文字列を代入
tinydict = {'name': 'john', 'code': 6734, 'dept': 'sales'}
print(d['one']) # キー'one'の値を出力
print(d[2]) # キー2の値を出力
print(tinydict) # 辞書全体を出力
print(list(tinydict.keys())) # すべてのキーを出力
print(list(tinydict.values())) # すべての値を出力実行結果
このコードを実行すると、次のような出力が得られます。
This is one
This is two
{'name': 'john', 'code': 6734, 'dept': 'sales'}
['name', 'code', 'dept']
['john', 6734, 'sales']ポイント
- 柔軟なキー指定: 文字列だけでなく、整数などもキーとして使えます。
- keys() / values(): 辞書から全キーや全値を取り出すには、これらのメソッドを使います。
なお、辞書には本来、要素間の「順序」という概念がありません。「要素の順番が狂っている」のではなく、単に順序を持たないデータ構造だと考えるのが正しい理解です。ただし、Python 3.7以降では挿入した順序が保持される仕様になったため、近年のコードでは定義順どおりに出力される点にも注意しておくとよいでしょう。
-
Pythonのシーケンス型とは?主な種類と特徴をわかりやすく解説
シーケンス型とは何か Pythonにおけるシーケンス(sequence)型とは、複数の値を順序付けて整理し、効率的に格納できるデータ型の総称です。代表的なシーケンス型には、文字列(str)、リスト(list)、タプル(tuple)、bytearray、rangeオブジェクトなどがあります。 一方で、辞書(dict)やセット(set)は順序を持たないデータを扱うコンテナであり、シーケンス型には分類されません。この違いを理解しておくことは、Pythonのデータ構造を使いこなす上で非常に重要です。 主なシーケンス型の特徴 Python公式ドキュメントによると、各シーケンス型は以下のような特徴を持っ
-
Pythonのデータ型と型変換をわかりやすく解説
この記事では、Pythonにおける主要なデータ型の種類と、それぞれの使い方、そしてデータ型同士を変換する方法について詳しく解説します。 Pythonの組み込みデータ型一覧 Pythonでは変数を作成・宣言する際に、さまざまなデータ型を持たせることができます。Pythonには以下のような組み込みデータ型が用意されています。 str(文字列) int、float、complex(数値) list、tuple(シーケンス) dict(辞書) set(集合) bool(ブール値) bytes、bytearray(バイナリ) それでは、各データ型の特徴と作成方法を順番に見ていきましょう。 文字列型: