pop
は、辞書(既知のキーが指定されている)で使用されると、そのキーを持つ項目を辞書から削除し、対応する値も返す、小さな機能です。しかし、もし私も鍵を欲しいのですが?キーをポップするのはちょっとした方法です、辞書からの値は?
pair = (key, some_dict.pop(key))
をしかし、場合が言う、私は希望以上のアイデアを、次の、最も低い値を持つキーと値のペアをポップしたかった:
はもちろん、シンプルなケースでは、私はおそらくこのような何かを行うことができます私は二度(明らかに私は、変数でmin
からの出力を格納することができ、操作をしなければならないと...これを行うには恐ろしいです
pair = (min(some_dict, key=some.get), some_dict.pop(min(some_dict, key=some_dict.get)))
を...持っているが、私はまだと完全に満足していませんそれ)。だから私の質問です:これを行うエレガントな方法はありますか?ここに明白なトリックがないのですか?
キーと値のペアを与えカスタム
dict
を作成するシンプルな実装です – JBernardo
@JBernardo私はそれを考えていました。それは明らかに良いですが、私はまだ1つなしでより良い方法があるべきだと感じています。 –
'dict'ではなく、ヒープが必要な場合があります。 'heapq'モジュールを参照してください。 – chepner