pythonで辞書を並べ替える方法

Pythonの組み込み辞書データタイプは順序付けられておらず、対応する値はキーを介して取得されることがわかっています。ただし、辞書内の項目を並べ替えて出力する必要がある場合があります。これは、キーまたは値に従って並べ替えることができます。辞書の内容を並べ替えて出力する方法はいくつありますか?ここにいくつかの素晴らしい解決策があります。

Pythonのコンテナには2種類のデータがあり、1つはコンテナ自体の並べ替え関数で、もう1つは組み込みの並べ替え関数です。

sort関数とsorted関数の唯一の違いは、sortがインプレースソートであり、sortedが新しいソート済みコンテナーを生成することです。

1 キー値で並べ替え

# 最も簡単な方法は、キー値で並べ替えることです。
def sortedDictValues1(adict): 
items = adict.items() 
items.sort()return[value for key, value in items] 
 
# もう1つはキー値でソートされており、前のものよりも高速であるようです。
def sortedDictValues2(adict): 
keys = adict.keys() 
keys.sort()return[dict[key]for key in keys] 
 
# または、より高速であると言われているキー値で並べ替えます。 。 。キーがタプルの場合でも適用されます
def sortedDictValues3(adict): 
keys = adict.keys() 
keys.sort()returnmap(adict.get, keys) 
 
# 1行で完了します。
[( k,di[k])for k insorted(di.keys())] 
 
# ソートされた関数のキーパラメーター(func)を使用してソートします。
# キーで並べ替え
print sorted(dict1.items(), key=lambda d: d[0])

2 値で並べ替え

# これは値に基づくソートです。最初にアイテムのキーと値の交換位置をリストに入れ、次にリストの各要素の最初の値、つまり元の値に従って並べ替えます。
ソート:
def sort_by_value(d): 
items=d.items() 
backitems=[[v[1],v[0]]for v in items] 
backitems.sort()return[ backitems[i][1]for i inrange(0,len(backitems))] 
 
# それでも1行でそれを行います:
[ v for v insorted(di.values())] 
 
# ラムダ式を使用した並べ替えは、より柔軟です。
sorted(d.items(), lambda x, y:cmp(x[1], y[1])),または逆の順序:
sorted(d.items(), lambda x, y:cmp(x[1], y[1]), reverse=True) 
 
# ソートされた関数のキーパラメーター(func)を使用してソートします。#値で並べ替え
print sorted(dict1.items(), key=lambda d: d[1])

ナレッジポイントの拡張:

準備知識:

pythonでは、辞書は組み込みのデータタイプであり、順序付けられていないストレージ構造であり、各要素はキーと値のペアです。

例:dict = {'username': 'password'、 'database': 'master'}、ここで、 'username'と 'database'はキーであり、 'password'と 'master'は値であり、d [key]を介して渡すことができます。対応する値の参照を取得しますが、値でキーを取得することはできません。

辞書の場合、次の点を知っておく必要があります。

a。辞書のキーは大文字と小文字が区別されます。

b。辞書に重複するキーを含めることはできません。

c。辞書は順序付けられておらず、要素の順序の概念はなく、順序付けられたペアの単純な配置にすぎません。

これまでに、python辞書の並べ替え方法に関するこの記事を紹介しました。関連するpython辞書の並べ替え方法については、ZaLou.Cnの以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後さらにサポートされることを願っています。 ZaLou.Cn!

Recommended Posts

pythonで辞書を並べ替える方法
告白プログラムをpythonで書く方法
Ubuntu14.04でPython仮想環境を作成する方法
pythonコードでラップする方法
Pythonで括弧を省略する方法
pythonでクラスを書く方法
pythonで数値をフィルタリングする方法
PythonでExcelを読む方法
pythonでreturnを書く方法
Pythonで変数を理解する方法
pythonで変数をクリアする方法
PythonでSQLiteを使用する方法
pythonで円の領域を見つける方法
Pythonで地球を作る方法
およびおよびまたはPythonでの使用方法
Pythonでサードパーティモジュールを導入する方法
pythonでnull値を表す方法
pythonでwinプログラムを書く方法
Pythonでサードパーティモジュールをインストールする方法
pythonでエラーをカスタムキャッチする方法
pythonでtryステートメントを書く方法
Pythonでプライベート属性を定義する方法
Pythonでグローバル変数を理解する方法
インストールされているモジュールをpythonで表示する方法
さまざまなシステムでのPythonopenメソッド
pythonで背景音楽を追加する方法
pythonで相対パスを表す方法
pythonでround関数を使用する方法
Pythonのインターフェースに基づいてプログラミングする方法
ubuntuサーバー環境にpythonをインストールする方法
pythonでアシスタントを実行するコードを使用する方法
pythonでゲームを書く方法を教えてください
pythonでファイルとディレクトリを削除する方法
ダウンロードしたモジュールをpythonでインストールする方法
pythonで連続乗算計算を実行する方法
pythonコードにコメントする方法
VMwareでCentOS仮想マシンを作成する方法
pythonをすばやく学ぶ方法
pythonはどのように辞書のキーを呼び出しますか
pythonプラグインをアンインストールする方法
Pythonでのパッケージの導入を理解する方法
pythonで写真を自動的にダウンロードする方法の例
IEを添付ファイルとしてPythonで保存する方法
pythonオブジェクトを理解する方法
パイソンタプルの使い方
PythonはFTPを実装して、ファイルをループでアップロードします
あなたはまだパイソンでケーキを描く方法を知っていますか? ? ?
pythonウェブページコードの表示方法
ubuntuでhanlpを使用する方法
pythonスレッドプールの使用方法
CentOSにPHP7.4をインストールする方法
pythonプログラムを保存する方法
Ubuntu14.04にmysqlをインストールする方法
Pythonでの辞書の詳細な使用法
CentOS8にPython3.8をインストールする方法
Ubuntu18.04にPython3.8をインストールする方法
CentOS8にPythonをインストールする方法
Centos7.2にHDP2.6をインストールする方法
python dict garbledを解決する方法
Ubuntu14.04にmysqlをインストールする方法
pythonモジュールを表示する方法