Python辞書から特定のキーを抽出しますか?
辞書は、Pythonで最も広く使用されているデータ構造です。これらには、キーと値の形式のデータが含まれています。この例では、特定のキーセットに固有の辞書からアイテムを取得する方法を説明します。
辞書理解あり
このアプローチでは、in演算子を使用してforループを使用して辞書をループするだけです。ただし、in演算子とともに、辞書キーを参照するときのキーの値についても説明します。
例
dictA = {'Sun': '2 PM', "Tue": '5 PM', 'Wed': '3 PM', 'Fri': '9 PM'} # Given dictionary print("Given dictionary : ",dictA) res = {key: dictA[key] for key in dictA.keys() & {'Fri', 'Sun'}} # Result print("Dictionary with given keys is : ",res)
出力
上記のコードを実行すると、次の結果が得られます-
Given dictionary : {'Sun': '2 PM', 'Tue': '5 PM', 'Wed': '3 PM', 'Fri': '9 PM'} Dictionary with given keys is : {'Fri': '9 PM', 'Sun': '2 PM'}
dict()を使用
このアプローチでは、辞書の必要なキーを選択し、そのキーをdict()関数に渡します。 forループを使用してログインします。
例
dictA = {'Sun': '2 PM', "Tue": '5 PM', 'Wed': '3 PM', 'Fri': '9 PM'} # Given dictionary print("Given dictionary : ",dictA) res = dict((k, dictA[k]) for k in ['Fri', 'Wed'] if k in dictA) # Result print("Dictionary with given keys is : ",res)>
出力
上記のコードを実行すると、次の結果が得られます-
Given dictionary : {'Sun': '2 PM', 'Tue': '5 PM', 'Wed': '3 PM', 'Fri': '9 PM'} Dictionary with given keys is : {'Fri': '9 PM', 'Wed': '3 PM'}
-
Pythonで文字列から10進数を抽出する
RegExモジュールを使用するのが最速の方法です。 >>> import re 文字列に整数と浮動小数点数、および以下が含まれていると仮定します- s =私の年齢は25歳です。55.50パーセントのマークがあり、9764135408が私の番号です findall()関数は、小数点の前後の数字を含む、指定されたパターンに一致する数値のリストを返します >>> re.findall('\d*\.?\d+',s) 結果はすべての番号のリストオブジェクトです ['25', '55.50', '9764
-
Pythonで辞書をキーで並べ替える方法は?
Pythonの標準配布には、コレクションモジュールが含まれています。高性能コンテナデータ型の定義があります。 OrderedDictは、ディクショナリオブジェクトに追加されたエントリの順序を記憶するディクショナリのサブクラスです。順序付けられた辞書を反復処理すると、アイテムはキーが最初に追加された順序で返されます。 >>> from collections import OrderedDict >>> D = {5:fff, 3:ttt, 1:ooo,4:bbb, 2:ddd} >>> OrderedDict(D.items()) &nb