この記事では、主に Python辞書ソートの実装方法を紹介し、Python 辞書ソートの関連スキルを例とともに分析します。必要な友人はそれを参照してください
この記事では、Python 辞書ソートの方法を例とともに分析します。皆さんの参考に共有してください。詳細は次のとおりです:
1. 準備知識:
Python では、辞書は組み込みの データ型 であり、各要素はキーと値のペアです。 : dict = { 'username': 'password', 'database': 'master'}、'username' と 'database' はキー、'password' と 'master' は値です。 value の対応する値は次のとおりです。 d[key]
Quote を通じて取得されますが、キーは value を通じて取得できません。
b. 辞書内に重複したキーは存在しません。要素順序の概念は、順序ペアの単純な配置にすぎません。
辞書自体には順序の概念がないことは前に説明しましたが、それは常にある時点で発生しますが、多くの場合、辞書をソートする必要があります。以下に説明します:
方法 1: 最も単純な方法では、要素 (キーと値のペア) を配置し、値を取り出します。ディクショナリの items メソッドはタプルのリストを返します。各タプルには項目のペア (キーと対応する値) が含まれます。このとき、ソートにはsort()メソッドを使用できます。
def sortedDictValues1(adict): items = adict.items() items.sort() return [value for key, value in items]
方法 2: キー配置方法を使用して値を選択します。方法 1 よりも高速です。辞書
オブジェクトのkeys()メソッドは、辞書内のすべてのキー値のリストをランダムな順序で返します。並べ替える必要がある場合は、返されたキー値リストに対して sort() メソッドを使用するだけです。 def sortedDictValues1(adict):
keys = adict.keys()
keys.sort()
return [adict[key] for key in keys]
方法 3: マッピング メソッドを使用して最後のステップをより効率的に実行する
def sortedDictValues1(adict): keys = adict.keys() keys.sort() return map(adict.get,keys)
方法 4: 辞書をキーでソートし、それをタプル リストの形式で返し、ラムダ関数を使用します
sorted(iterable[ , cmp [, key[, reverse]]]cmp と key は通常ラムダを使用します
例:
>>> d={"ok":1,"no":2}#对字典按键排序,用元组列表的形式返回 >>> sorted(d.items, key=lambda d:d[0]) [('no', 2), ('ok', 1)]
>>> sorted(d.items, key=lambda d:d[1]) [('ok', 1), ('no', 2)]
ソートの方法はたくさんありますが、辞書要素については、こちらを参照してください。包括的な概要はありませんが、プログラムの効率性に対する高い要件がない場合は、好きなものを選択してください
以上がPythonコード記述で辞書ソートを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。