如何在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]