ネストされた辞書が与えられた場合、タスクはそのすべてのキーと値のペアを走査することです。ネストされた辞書ではない値を出力します。ネストされた辞書の場合、キーと値のペアを出力するために走査を再帰的に続行する必要があります。
再帰を利用して、このタスクを実行する関数を定義できます。
def myprint(d): for k, v in d.items(): if isinstance(v, dict): myprint(v) else: print("{0} : {1}".format(k, v))
この関数は引数として辞書を受け取り、そのキーと値のペアを反復処理します。値がネストされた辞書でない場合は、キーと値のペアが出力されます。値が辞書の場合、この新しい辞書を使用して myprint 関数を再帰的に呼び出します。
次の辞書について考えてみましょう:
d = { "xml": { "config": { "portstatus": {"status": "good"}, "target": "1" }, "port": "11" } }
myprint 関数を呼び出すと、出力:
xml : {config: {portstatus: {status: good}, target: 1}, port: 11} config : {portstatus: {status: good}, target: 1} portstatus : {status: good} target : 1 port : 11
このソリューションは、すべてのネストされた辞書値をループして出力する再帰メカニズムを提供します。
以上がPython でネストされた辞書からすべての値を再帰的に出力するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。