特定の値を保持しながら、深さが可変のネストされた辞書を更新するにはどうすればよいですか?
可変深さのネストされた辞書の更新
ネストされた辞書 (dictionary1) を別の辞書の内容で更新しようとするとジレンマに遭遇します入れ子構造内の特定の値を保持しながら (更新)。具体的には、「levelA」値を上書きせずに、dictionary1 の「level2」キーを更新したいとします。
この課題に対処するために、再帰的ソリューションが提案されています。次の Python コードは、このアプローチを実装しています。
def merge_dicts(dict1, dict2): for key in dict2: if key in dict1 and isinstance(dict1[key], dict) and isinstance(dict2[key], dict): merge_dicts(dict1[key], dict2[key]) else: dict1[key] = dict2[key]
この関数は、両方の辞書を再帰的に走査し、次のルールに基づいて値を更新します。
- 両方のキーが両方の辞書に存在し、両方のキーが存在する場合辞書自体を呼び出すと、関数はそれ自体を再帰的に呼び出し、ネストされた辞書をマージします。
- それ以外の場合、dict2 の値が dict1 に割り当てられます。
この再帰的なアプローチを利用すると、ネストされた辞書を変更できます。特定の値を保持しながら、さまざまな深さの辞書を作成します。
以上が特定の値を保持しながら、深さが可変のネストされた辞書を更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

Pythonasyncioについて...

Investing.comの反クラウリング戦略を理解する多くの人々は、Investing.com(https://cn.investing.com/news/latest-news)からのニュースデータをクロールしようとします。

Python 3.6のピクルスファイルの読み込みエラー:modulenotfounderror:nomodulenamed ...

SCAPYクローラーを使用するときにパイプラインファイルを作成できない理由についての議論は、SCAPYクローラーを学習して永続的なデータストレージに使用するときに、パイプラインファイルに遭遇する可能性があります...
