如何有效地从Python中值为2D列表的字典中提取列中的所有元素?

2024-09-28 03:18:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本字典,它的值是列表的列表

mydict = {
"A" : [["gactacgat", "IE"],["gactacgat", "IE"]],
"G" : [["ggctacgat", "EI"],["gactacgat", "IE"]],
"C" : [["gcctacgat", "N"],["gactacgat", "IE"]],
"T" : [["gtctacgat", "IE"],["gactacgat", "IE"]]
}

我试图创建一个列表,其中包含这些2D列表第二列中的所有元素。 这就是我正在做的:

  mylist = []
  for key in mydict.keys():
      for row in mydict[key]:
          mylist.append(row[1])

有没有比我所做的更有效的方法从这些列表中的所有列表中访问特定索引

(如果我的措辞不好,我深表歉意,如果有任何关于更好标题问题的反馈,我将不胜感激)


Tags: keyin元素列表for字典mydictie
1条回答
网友
1楼 · 发布于 2024-09-28 03:18:20

列出理解是你的朋友:

mylist = [row[1] for value in mydict.values() for row in value]

这使用了一个嵌套循环,但可能优化得更好一些。此外,使用dict.values可以在外部循环的每次迭代中为您保存一个键查找,并以与键相同的顺序返回项

相关问题 更多 >

    热门问题