python - 如何从 Python 中的嵌套字典中打印所有键和值?

标签 python python-3.x dictionary

我仍然是 Python 的新手,目前正在尝试使用 dictionaries。我有一个嵌套的 dictionary,它看起来像:

nestedDic = {'FROM': {'SOME TEXT FROM': ['CHILD1', 'CHILD2']}}

并且我能够通过遍历子节点来打印它们。

def print_nested(val, nesting = -5):
    if type(val) == dict:
        #print('')
        nesting += 5
        for k in val:
            print(end='')
            print(k)
            print_nested(val[k],nesting)
    else:
        print(val)

但输出看起来像:

enter image description here

但我需要的输出是:

FROM SOME TEXT FROM CHILD1 CHILD2

我哪里错了?任何帮助都将不胜感激。

最佳答案

这个应该完成你的工作:

nestedDict = {'FROM': {'SOME TEXT FROM': ['CHILD1', 'CHILD2']}}

def printDict(inDict):
    print(k,end=" ")
    for k,v in inDict.items():
        if type(v) == dict:
            printDict(v)
        elif type(v) == list:
            for i in v:
                print(i, end=" ")
        else:
            print(v, end=" ")

输出:

FROM SOME TEXT FROM CHILD1 CHILD2

关于python - 如何从 Python 中的嵌套字典中打印所有键和值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51425383/

相关文章:

python - 基本优化的 numpy 和 sympy lambdify 结果的差异

python - Python 3.5 + Pillow 是否不支持 RGBA PNG?

python - 用字典中的值交换键的改进?

python - Airflow:高效地执行等待( sleep )任务

python - 如何解决 GTK 文件选择器对话框中的这个错误

Python tkinter on matplotlib 如何更新?

python - 创建动态类时如何将 kwargs 传递给 __init_subclass__

python - 生成具有对角边缘的数组的 Pythonic 方法是什么?

Java:Collections.unmodifiedMap 与 Collections.checkedMap

python - 键/值对的两个字典列表的交集