問題タブ [ordereddictionary]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
76459 参照

python - OrderedDictのOrderedDictをソートする方法は?

「深さ」キーで OrderedDict の OrderedDict をソートしようとしています。その Dictionary をソートする解決策はありますか?

並べ替えられた辞書は次のようになります。

それを取得する方法はありますか?

0 投票する
4 に答える
16577 参照

python - 順序付き辞書から別の辞書に最初のN個のキーペアを取得する

OrderedDict値でソートされた順序付き辞書( )があります。上位(たとえば25)のキー値を取得して新しい辞書に追加するにはどうすればよいですか?例:私は次のようなものを持っています:

これで順序付けられた辞書になりましorderedた。たとえば、最も頻繁に使用される上位2つの項目とそのキーを使用して、辞書を作成します。

0 投票する
2 に答える
7473 参照

python - Python dict をリストに抽出するときの値の順序

これを行うことにより、辞書のリストからすべての値(特定のキーに対応するものを除く)を取得しようとしています:

どこsomeDictに似ています:

辞書には固有の順序がないことを知っています。しかし、私のリスト fv のリストは順番に値を持つ必要があります。キーでdictをソートしてから、今行ったことを実行することを考えています。しかし、それは動作することが保証されていますか?

使用がオプションであることは知ってOrderedDictいますが、辞書には通常大量のデータが含まれるため、dict と比較してパフォーマンスが劣っているように見えます。

更新: 順番に値が必要だと言うとき、実際に並べ替える必要はありません。つまり、値のリストを毎回決まった決定論的順序で取得できる必要があるということです。上記の例では、私は常に [[0.2,0.3],[0.9,0.4]] を取得したいのですが、それ自体はソートされた順序ではない場合があります。並べ替えは 1 つの決定論的な順序を強制します。私が本当に気にかけているのは、最終的なリストで値の位置を維持することです。たとえば、yKey の値は常に各リストの最初の値でなければならず、zKey の値は常に各リストの 2 番目の値でなければなりません。 ykey、zkey などは辞書内の任意の順序である場合でも同様です。

0 投票する
5 に答える
1811 参照

python - 2 つのリスト間の n 個の最大の違いを見つける

同じ数の要素を持つoldとの2 つのリストがあります。new

nパラメータとして取り、同じ場所にある2つのリストの要素を(インデックスで)比較し、最大の違いを見つけて、それらの要素nのインデックスを返す効率的な関数を作成しようとしています。n

これは、値でソートされた辞書で解決するのが最善だと思っていましたが、Python では利用できません(それを提供するライブラリは知りません)。おそらく、より良い解決策がありますか?

0 投票する
3 に答える
753 参照

python - Pythonで制限付きメモ化デコレータを作成するにはどうすればよいですか?

明らかに、すばやく検索すると、Python のメモ化デコレーターの実装とフレーバーが 100 万個も見つかります。しかし、まだ見つけられていないフレーバーに興味があります。保存された値のキャッシュが固定容量になるようにしたいと思います。新しい要素が追加され、容量に達した場合、最も古い値が削除され、最新の値に置き換えられます。

私の懸念は、メモ化を使用して非常に多くの要素を保存すると、メモリ不足のためにプログラムがクラッシュすることです。(この懸念が実際にどれほど適切に配置されているかはわかりません。) キャッシュのサイズが固定されている場合、メモリ エラーは問題になりません。そして、私が取り組んでいる多くの問題は、プログラムが実行されるにつれて変化するため、最初にキャッシュされた値は、後でキャッシュされた値とは大きく異なって見えます (そして、後で再発する可能性ははるかに低くなります)。だから、古いものは新しいものに置き換えてほしい。

OrderedDictクラスと、それをサブクラス化して最大サイズを指定する方法を示す例を見つけました。通常のキャッシュではなく、それをキャッシュとして使用したいと思いますdict。問題は、 memoize デコレータmaxlenがデフォルトでと呼ばれるパラメータを取る必要があることNoneです。である場合None、キャッシュは無限であり、通常どおりに動作します。その他の値は、キャッシュのサイズとして使用されます。

私はそれが次のように動作することを望みます:

以下は私がこれまでに持っているコードですが、「ネイキッド」とパラメーターの両方を機能させながら、パラメーターをデコレーターに渡す方法がわかりません。

編集:ベンの提案を使用して、次のデコレータを作成しました。これは、私が想像したとおりに機能すると信じています。これらの装飾された関数を で使用できることは私にとって重要でmultiprocessingあり、これは過去の問題でした。しかし、このコードの簡単なテストでは、ジョブをスレッドのプールにファームアウトした場合でも、正しく動作するように見えました。

0 投票する
4 に答える
3483 参照

python - DjangoのSortedDict

テンプレートに表示したい時間のリストを含む辞書があります。

テンプレートにドロップダウンを作成したい:

ただし、ドロップダウンの要素は、辞書で定義されている順序で処理されていません。私は何が欠けていますか?

0 投票する
4 に答える
32068 参照

python - OrderedDictの最後の要素

私はodタイプを持っていOrderedDictます。最近追加された(キー、値)ペアにアクセスしたい。それをしますが、私が望まないod.popitem(last = True)ペアも削除します。od

それを行うための良い方法は何ですか?私はこれを行うことができます/すべきですか:

0 投票する
9 に答える
209916 参照

python - インデックスによる collections.OrderedDict 内のアイテムへのアクセス

次のコードがあるとしましょう:

次のように、番号を付けてアイテムにアクセスする方法はありますか?

0 投票する
2 に答える
2432 参照

python - Pythonの通常の辞書から順序付けられた辞書への変換

私はPythonの普通の辞書を持っています。この場合、挿入順序は保持されません。要素を挿入順に保持する必要があります。私はそれOrderedDictがこの仕事をすることができることを知っています。しかし、私の問題は、既存の通常の辞書から順序付けられた辞書を取得する必要があることです。この辞書は変更できません。以下は私の通常の辞書です:

Pythonで、既存の辞書の要素の順序を維持する方法はありますか?どんな助けでも大歓迎です。Python2.7を使用する

0 投票する
4 に答える
5581 参照

python - Pythonでの文字列からOrderedDictへの変換

コレクションをインポートしてPython順序付き辞書を作成し、「filename.txt」という名前のファイルに保存しました。ファイルの内容は次のようになります

この OrderedDict を別のプログラムから利用する必要があります。私はそれをする

タイプとして「mydict」を取得する必要があります

しかし、ここでは「str」型であることがわかります。
Python で文字列型を OrderedDict 型に変換する方法はありますか? Python 2.7を使用