[解決済み] ネストされたすべてのディクショナリー値をループスルーしますか?
2022-04-28 05:06:11
質問
for k, v in d.iteritems():
if type(v) is dict:
for t, c in v.iteritems():
print "{0} : {1}".format(t, c)
辞書をループして、値がネストされた辞書でないすべてのキーと値のペアをプリントアウトしようとしています。値が辞書の場合、その中に入り、そのキーと値のペアをプリントアウトしたいのですが・・・・・・。どのようなヘルプ?
EDIT
これはどうでしょう?これでも1つしか印刷されません。
def printDict(d):
for k, v in d.iteritems():
if type(v) is dict:
printDict(v)
else:
print "{0} : {1}".format(k, v)
テストケース全体
辞書
{u'xml': {u'config': {u'portstatus': {u'status': u'good'}, u'target': u'1'},
u'port': u'11'}}
結果
xml : {u'config': {u'portstatus': {u'status': u'good'}, u'target': u'1'}, u'port': u'11'}
解決方法は?
Niklas が言ったように、再帰性が必要です。つまり、dict を表示する関数を定義し、もし値が dict であれば、この新しい dict を使って print 関数を呼び出したいのです。
のようなものです。
def myprint(d):
for k, v in d.items():
if isinstance(v, dict):
myprint(v)
else:
print("{0} : {1}".format(k, v))
関連
最新
-
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コンテナのための組み込み汎用関数操作
-
Python 人工知能 人間学習 描画 機械学習モデル作成
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み] データ型が理解できない
-
[解決済み】TypeError: 系列を <class 'float'> に変換することができません。
-
[解決済み】LogisticRegression: Pythonでsklearnを使用して、未知のラベルタイプ: '連続'を使用しています。
-
[解決済み】 TypeError: += でサポートされていないオペランド型: 'int' および 'list' です。
-
[解決済み] ネストされたdictを繰り返し処理する方法は?
-
[解決済み] 不規則なリスト群を平坦にする