Pythonの辞書メソッド徹底解説:cmp()・len()・items()の使い方
Pythonの辞書(dict)は、最もよく使用されるコレクション型データ構造の一つです。辞書は「キー」と「値」のペアで表現され、キーにはインデックスが割り当てられますが、値には割り当てられません。Pythonには、さまざまなプログラムで辞書を簡単に操作できる組み込み関数が多数用意されています。本記事では、その中でも代表的な3つの組み込みメソッドであるcmp()、len()、items()について、具体例を交えながら詳しく解説します。
cmp()メソッドとは
cmp()メソッドは、2つの辞書をキーと値に基づいて比較するためのメソッドです。重複する辞書の識別や、辞書間の大小関係の比較に役立ちます。ただし、cmp()はPython 2専用の機能であり、Python 3では廃止されている点に注意してください。Python 3環境では、代わりに比較演算子(==、<、>など)を使って辞書を比較することになります。
構文
cmp(dict1, dict2) # dict1とdict2は比較対象となる2つの入力辞書です。
戻り値の意味は以下の通りです。
- 0:2つの辞書が等しい場合
- 1:最初の辞書(dict1)の方が大きい場合
- -1:最初の辞書(dict1)の方が小さい場合
cmp()の使用例
以下の例では、複数の辞書同士を互いに比較しています。
dict1 = {'Place': 'Delhi', 'distance': 137};
dict2 = {'Place': 'Agra', 'distance': 41};
dict3 = {'Place': 'Bangaluru', 'distance': 1100};
dict4 = {'Place': 'Bangaluru', 'distance': 1100};
print "comparison Result : %d" % cmp (dict1, dict2)
print "comparison Result : %d" % cmp (dict2, dict3)
print "comparison Result : %d" % cmp (dict3, dict4)
上記のコードを実行すると、次のような結果が得られます。
comparison Result : 1 comparison Result : -1 comparison Result : 0
dict3とdict4は内容が完全に一致しているため「0」が返されていますね。
len()メソッドとは
len()メソッドは、辞書全体の長さ、つまり辞書に含まれるアイテム(キーと値のペア)の総数を返します。辞書のサイズを確認したい場面で非常に便利なメソッドです。
構文
len(dict)
以下の例では、それぞれの辞書の長さを確認しています。
len()の使用例
dict1 = {'Place': 'Delhi', 'distance': 137};
dict2 = {'Place': 'Agra', 'distance': 41 ,'Temp': 25};
print("Length of dict1",len(dict1))
print("Length of dict2",len(dict2))
上記のコードを実行すると、次のような結果が得られます。
出力
Length of dict1 2 Length of dict2 3
dict1には2つのキーと値のペア、dict2には3つのペアが含まれているため、このような結果になります。
items()メソッドとは
辞書のキーと値のペアを、タプルのリスト形式で取り出したい場合があります。そんなときに活躍するのがitems()メソッドです。辞書内のすべてのキーと値のペアをタプルとしてまとめて取得できます。
構文
辞書名.items()
以下の例では、2つの辞書からそれぞれのアイテムをタプルのペアとして取得しています。
items()の使用例
dict1 = {'Place': 'Delhi', 'distance': 137};
dict2 = {'Place': 'Agra', 'distance': 41 ,'Temp': 25};
print(dict1.items())
print(dict2.items())
上記のコードを実行すると、次のような結果が得られます。
出力
dict_items([('Place', 'Delhi'), ('distance', 137)])
dict_items([('Place', 'Agra'), ('distance', 41), ('Temp', 25)])
まとめ
今回はPythonの辞書を操作する3つのメソッドを紹介しました。
- cmp():2つの辞書を比較する(Python 2のみ。Python 3では比較演算子を使用)
- len():辞書に含まれるキーと値のペアの総数を取得する
- items():辞書のキーと値のペアをタプルのリストとして取得する
特にlen()とitems()はPython 3でもそのまま使える基本メソッドなので、日常的なプログラミングでぜひ活用してください。cmp()についてはPython 2のレガシーコードを読む際の知識として覚えておくとよいでしょう。
-
Pythonの辞書メソッド一覧|使い方と機能をわかりやすく解説
はじめに Pythonの辞書(dict)は、キーと値のペアでデータを管理できる非常に便利なデータ構造です。この記事では、辞書で直接使える辞書メソッドと、辞書の操作に役立つ組み込み関数を一覧表にまとめて紹介します。それぞれの機能を把握しておくと、日常的なコーディングの効率が大きく向上します。 辞書の主なメソッド一覧 以下は、Pythonの辞書オブジェクトで利用できる代表的なメソッドです。 No.メソッド名と説明 1dict.clear()辞書内のすべての要素(キーと値のペア)を削除します。 2dict.copy()辞書のコピー(浅いコピー)を作成して返します。 3dict.fromkeys(
-
【Python入門】リスト・タプル・辞書の違いを徹底解説
Pythonの3大コレクション:リスト、タプル、辞書 Pythonには複数のデータをまとめて扱うためのコレクション型が用意されています。中でもよく使われるのがリスト(list)、タプル(tuple)、辞書(dict)の3つです。それぞれ特徴が異なるため、用途に応じて使い分けることが重要です。 基本的な違いの概要 リストとタプルはシーケンス(順序付き)オブジェクトであり、要素を順番に並べて管理します。一方、辞書はキーと値のペアを格納するハッシュテーブル構造です。 リストとタプルは「順序を持つコレクション」ですが、辞書は「順序を持たないコレクション」として扱われます。 リストと辞書はミュータブ