如何在python中创建和打印多级词典?

如何在python中创建和打印多级词典?,python,Python,所需的数据结构: Name -->gene1 --> CDS 1 3 6 10 --> exon 4 8 ->gene2 --> CDS 4 9 我正在尝试使用python字典创建和打印上述数

所需的数据结构:

Name -->gene1
             --> CDS
                     1   3
                     6   10
             --> exon
                     4   8
       ->gene2
             --> CDS
                     4   9
我正在尝试使用python字典创建和打印上述数据结构。我对Python非常陌生,这就是为什么我不能创建它。需要帮助来创建它

尝试:

输出:

name
        gene1
                CDS
                        [1, 3]
你的问题很不清楚,但这里有一个可能的解决办法

python2中的
items()
iteritems()

这将输出:

gene2
         CDS
                 [4, 9]
gene1
         CDS
                 [1, 3]
                 [6, 10]
         exon
                 [4, 8]

gene1
gene2
是外部dict中的键,
CDS
exon
是内部dict(外部dict的值),它们的值是列表(嵌套列表)

。。。你的问题到底是什么?您似乎已经创建了一个多层次的字典,它正按照您的要求打印出来。首先,重要的是,不要使用dict作为变量名,dict在python@jonrsharpe:我所需的数据结构有两个基因(gene1和gene2)CD有两行。我在字典的这一部分遇到了问题。如果同一个键需要有多个值,请将该值列成一个列表。
dct = {"gene1": {"CDS": [[1, 3], [6, 10]], "exon": [[4, 8]]}, "gene2": {"CDS": [[4, 9]]}}

for outer_key, outer_value in dct.items():
    print(outer_key)
    for inner_key, inner_value in outer_value.items():
        print("\t", inner_key)
        for elem in inner_value:
            print("\t\t", elem)
gene2
         CDS
                 [4, 9]
gene1
         CDS
                 [1, 3]
                 [6, 10]
         exon
                 [4, 8]