[解決済み] defaultdictのネストされたdefaultdict
2022-04-20 11:59:20
質問
defaultdictをdefaultdictのデフォルトにもする方法はありますか?(つまり、無限レベルの再帰的なdefaultdict?)
できるようにしたい。
x = defaultdict(...stuff...)
x[0][1][0]
{}
だから、私はできる
x = defaultdict(defaultdict)
しかし、それは第二階層に過ぎない。
x[0]
{}
x[0][0]
KeyError: 0
これを実現するレシピがあるのです。しかし、通常のdefaultdictの引数を使うだけでできるのでしょうか?
これは無限レベルの再帰的なdefaultdictをどのように行うかを尋ねていることに注意してください。 Python: defaultdictのdefaultdict? という、2レベルのdefaultdictを行う方法でした。
結局は 束 というパターンがあるのですが、この方法を知らないことに気づいて、興味を持ちました。
どのように解決するの?
任意のレベル数の場合。
def rec_dd():
return defaultdict(rec_dd)
>>> x = rec_dd()
>>> x['a']['b']['c']['d']
defaultdict(<function rec_dd at 0x7f0dcef81500>, {})
>>> print json.dumps(x)
{"a": {"b": {"c": {"d": {}}}}}
もちろん、これをラムダで行うこともできますが、私はラムダは可読性が低いと感じています。 いずれにせよ、このようになる。
rec_dd = lambda: defaultdict(rec_dd)
関連
-
python string splicing.join()とsplitting.split()の説明
-
任意波形を生成してtxtで保存するためのPython実装
-
[解決済み】IndexError: invalid index to scalar variableを修正する方法
-
[解決済み] defaultdictをdictに変換する方法は?
-
[解決済み] ネストされたPythonのdictをオブジェクトに変換する?
-
[解決済み] chromedriverでSeleniumを使用していることをWebサイトで検出することは可能ですか?
-
[解決済み] OpenCV-Pythonによる簡単な数字認識OCR
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】defaultdictのdefaultdict?
-
[解決済み】log(n!)=Θ(n-log(n))なのか?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python Decorator 練習問題
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
PythonによるExcelファイルの一括操作の説明
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み】終了コード -1073741515 (0xC0000135)でプロセス終了)
-
[解決済み】「SyntaxError.Syntax」は何ですか?Missing parentheses in call to 'print'」はPythonでどういう意味ですか?
-
[解決済み】TypeErrorを取得しました。エントリを持つ子テーブルの後に親テーブルを追加しようとすると、 __init__() missing 1 required positional argument: 'on_delete'
-
[解決済み】ValueError: xとyは同じサイズでなければならない
-
[解決済み】defaultdictのdefaultdict?