首页 > 解决方案 > 如何使用 while 循环访问列表的所有第二个元素,这些元素是存储在字典中的值?

问题描述

如果我有一本这样的字典,里面装满了类似的列表,我该如何应用 while loo tp 提取一个打印第二个元素的列表:

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

我需要在更大的字典中为列表的第二个元素打印“BOBB7”部分。里面有十个键值对,所以我是这样开始的,但不确定该怎么做,因为我能找到的所有例子都与我的问题无关:

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

非常感谢任何帮助。

标签: pythonlistdictionarywhile-loop

解决方案


这是一个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

推荐阅读