需要数据结构:
Name -->gene1
--> CDS
1 3
6 10
--> exon
4 8
->gene2
--> CDS
4 9
我正在尝试使用python Dictionaries创建和打印上述数据结构。我对Python很陌生,这就是为什么我无法创建它。需要帮助来创建它。
尝试:
dict = {'name' :{'gene1': {'CDS' : [1, 3]}}}
for name in dict:
print name
for gene in dict[name]:
print "\t" +gene
for feature in dict[name][gene]:
print "\t\t"+feature
print "\t\t\t",
print dict[name][gene][feature]
输出:
name
gene1
CDS
[1, 3]
答案 0 :(得分:2)
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)
你的问题很不清楚,但这是一个可能的解决方案。
python2中的 items()
是iteritems()
这将输出:
gene2
CDS
[4, 9]
gene1
CDS
[1, 3]
[6, 10]
exon
[4, 8]
gene1
gene2
是外部字典中的键,CDS
和exon
是内部字符串(外部字典的值),它们的值是列表(嵌套)列表)