我有一个嵌套列表,如:
list1 = [(A,0.75),(D,0.49),(Y,0.36)]
我有一个参考嵌套列表,如:
mainlist = [(A,10),(B,20),(C,30),(D,40),(E,50).........,(Y,250),(Z,260)]
- 我想在mainlist中搜索关键字A。你知道吗
- 在mainlist中找到一个后,将相应的键、值对存储在一个新的嵌套列表中。你知道吗
- 对D和Y重复1和2。(列表1中的所有元素)
我希望输出为:
newlist = [(A,1),(D,4),(Y,250)]
Tags:
请注意,在他的(相当漂亮的)解决方案中使用的
set
@Sait是一个由唯一项组成的无序数据结构:'A', 'D', 'Y'
。你知道吗'A', 'D', 'Y', 'A'
,那么只有'A', 'D', 'Y'
会出现在您的输出中,因为每个项在一个集合中只能出现一次。你知道吗也就是说,使用字典而不是元组列表进行查找可以为自己省去一些麻烦。你知道吗
此解决方案保证保留输入的顺序,并且可以处理重复的键。通过使用字典,您不需要遍历整个
mainlist
来查找密钥。您可以对键进行迭代,并通过对每个键进行一次字典查找(这相当快)来获取它们的值。你知道吗你在找这样的东西吗:
输出:
相关问题 更多 >
编程相关推荐