如何使用while循环访问存储在字典中的值列表的所有第二元素?



如果我有一个这样的字典,里面充满了类似的列表,我如何应用while命令提取一个列表,并打印第二个元素:

racoona_valence={}
racoona_valence={"rs13283416": ["7:87345874365-839479328749+","BOBB7"],}

我需要打印"BOBB7"对于大字典中列表的第二个元素。其中有十个键值对,所以我像这样开始,但不确定该怎么做,因为我能找到的所有示例都与我的问题无关:

n=10
gene_list = []
while n>0:

任何帮助都非常感谢。

嗯,有很多方法可以做到这一点,这取决于你的数据结构有多好。

racoona_valence={"rs13283416": ["7:87345874365-839479328749+","BOBB7"], "rs13283414": ["7:87345874365-839479328749+","BOBB4"]}
output = []
for key in racoona_valence.keys():
output.append(racoona_valence[key][1])
print(output)
other_output = []
for key, value in racoona_valence.items():
other_output.append(value[1])
print(other_output)
list_comprehension = [value[1] for value in racoona_valence.values()]
print(list_comprehension)
n = len(racoona_valence.values())-1
counter = 0
gene_list = []
while counter<=n:
gene_list.append(list(racoona_valence.values())[n][1])
counter += 1
print(gene_list)

这是您想要的list comprehension:

second_element = [x[1] for x in racoona_valence.values()]

这是一个for loop做你想要的:

second_element = []
for value in racoona_valence.values():
second_element.append(value[1])

这是一个while loop做你想要的:

# don't use a while loop to loop over iterables, it's a bad idea
i = 0
second_element = []
dict_values = list(racoona_valence.values())
while i < len(dict_values):
second_element.append(dict_values[i][1])
i += 1

无论您使用哪种方法,您都可以通过执行以下操作来查看结果:

for item in second_element:
print(item)

对于你给出的例子,这是输出:

BOBB7

相关内容

  • 没有找到相关文章

最新更新