問題タブ [defaultdict]
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.
python - Pythonでdefaultdict(list)を反復処理するにはどうすればよいですか?
Pythonでdefaultdict(list)を反復処理するにはどうすればよいですか?Pythonでリストの辞書を作成するより良い方法はありますか?通常の方法を試しiter(dict)
ましたが、エラーが発生しました。
メインクラス:
para.pyc:
の例は./foo/bar/para-lines.txt
次のようになります。
メインクラスの出力は次のようになります。
python - リストに相当する defaultdict
ありますか\python の非常に便利なものと同等のものをどのように構築しますcollections.defaultdict
か?
このようなコンテナの想像上の使用法:
更新:この構造にさらに機能を追加するために、フォローアップの質問を追加しました
python - defaultdict を使用したキー/値の検索
私は iteritems() と items() を for ループと組み合わせてキーと値をスキャンできる標準辞書で使用することに精通しています。ただし、デフォルトのdictでこれを行うにはどうすればよいですか。たとえば、特定の値がキーまたはキーに関連付けられた値のいずれにも表示されないことを確認したいと思います。現在、次のことを試しています。
ただし、次のようになります。
変数/辞書には次の宣言があります
では、どうすれば重要な値を取得するのが最善でしょうか? ありがとう!
python - 辞書を更新せずにdefaultdictのキーをチェックする方法(Python)?
私は通常、Python 辞書を操作するときに次のイディオムを使用します。
大きな辞書の場合、ステートメント
あまり効率的ではありません(読んだことは覚えていますが、実際にも気づいたことがあります)
今日、私は defaultdict を使用していましたが、defaultdict が KeyError を返すことは決してなく、代わりに元の辞書を更新することを忘れていました。
defaultdict を更新せずにルックアップを実行するにはどうすればよいですか? ユーザーがキーを再入力できるように、エラーを出力する必要があります。
ありがとうございました!
更新:いくつかの投稿者は、遅いという私の信念if key in dct:
は間違っていると示唆しています。私は戻って、以前読んだ本の方が使いやすい本を調べましたtry: except:
。これは 2002 年の Alex Martelli による Python Cookbook の Recipe 1.4 であり、ここでもオンラインで見つけることができます: Add an entry to dictionary。昔の記憶なんてあてにならない!レシピには「遅い」とは記載されておらず、使用していませんin
が、has_key
. それは単にそれtry: except:
がよりPythonicであることを示しています(少なくともレシピの本のバージョン)。訂正と回答ありがとうございます。
python - defaultdictの値のタイプを取得する方法
この質問が些細なことかどうかはわかりません。しかし、数時間検索した後、私はここでそれを尋ねることに決めました。次のコードを検討してください。
私の知る限りd
、タイプの値のみを受け入れますint
。ここで、の値の型と同じ型の別の変数を作成したい場合、d
これを行うにはどうすればよいですか?不可能なコードですが、それは私の質問を理解するのに役立つかもしれません:これは次のとおりです。
「同じタイプ」と出力する必要があり、クラスメンバーの存在を発明していtype_of_values
ますが、この場合、その値はである必要がありますint
。
python - multiprocessing で defaultdict を使用していますか?
実験と学習だけで、複数のプロセスでアクセスできる共有辞書を作成する方法は知っていますが、辞書を同期させる方法はわかりません。defaultdict
、私が抱えている問題を示していると思います。
最初の結果は ( を使用していないためmultiprocessing
) 動作しますが、 で動作させるのに問題がありmultiprocessing
ます。解決方法はわかりませんが、同期されていない(そして後で結果に参加する)か、辞書multiprocessing
に設定する方法がわからないことが原因である可能性があります。defaultdict(int)
これを機能させる方法に関するヘルプや提案は素晴らしいでしょう!
python - defaultdict が値の配列を作成するのはなぜですか?
配列の配列からデフォルトのdictを作成しています:
私の期待される結果は次のとおりです。
しかし、私の結果は次のとおりです。
それがソースリストであるため、defaultdictが私の値を配列に保持しようとしているかのようです!
ここで何が起こっているのか、どうすれば期待される結果を得ることができるのか知っている人はいますか?
python - Pythonでdefaultdictを値で並べ替える
私は次のようなデータ構造を持っています:
異なる年の3つの都市の人口は次のとおりです。
defaultdict
データの保存にを使用しています。
defaultdict
リストの特定の列(年)に基づいて並べ替えたい。たとえば、1990年の並べ替えでは、がC,B,A
表示され、2010年の並べ替えではA,C,B
。
また、これはデータを保存するための最良の方法ですか?人口の値を変更しているので、変更可能にしたいです。
python - Luaで利用可能なPythonのdefaultdict機能はありますか
collections.defaultdict
存在しない連想配列キーのデフォルト値を自動的に処理する、Pythonで利用可能なものと同様の機能がLuaにありますか?
エラーの代わりに以下のコードを設定nil
したいと思います。v
したがって、基本的にa[2]
(存在しないキー)table
をデフォルトにする方法は次のとおりです。
Pythonでは、次のように実行できます。