[英]Get an item from a list if its index is on another list
嗯,我在网站上看,我没有找到任何可以帮助我的东西,所以我来问了。 如果它的索引在另一个列表中,我如何从列表中获取项目?
例子:
我有一组向量:
[[0.0,0.0,0.1] [0.4,0.23,0.175] [0.0,1.,0.5] [0.0,0.03,0.1] [0.02,0.0,0.3]]
和索引列表:
[0,2,3]
我想要这样的结果:
[[0.0,0.0,0.1] [0.0,1.,0.5] [0.0,0.03,0.1]]
我怎样才能得到这个结果? 感谢任何帮助:)
像这样的东西
lst1 = [[0.0, 0.0, 0.1], [0.4, 0.23, 0.175], [0.0, 1., 0.5], [0.0, 0.03, 0.1], [0.02, 0.0, 0.3]]
lst2 = [0, 2, 3]
lst3 = [x for idx, x in enumerate(lst1) if idx in lst2]
print(lst3)
输出
[[0.0, 0.0, 0.1], [0.0, 1.0, 0.5], [0.0, 0.03, 0.1]]
你可以通过列表理解来做到这一点。
例如:
mylist = [[0.0,0.0,0.1], [0.4,0.23,0.175], [0.0,1.,0.5], [0.0,0.03,0.1], [0.02,0.0,0.3]]
indices = [0,2,3]
result = [mylist[i] for i in indices]
结果现在是[[0.0, 0.0, 0.1], [0.0, 1.0, 0.5], [0.0, 0.03, 0.1]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.