为了账号安全,请及时绑定邮箱和手机立即绑定

如何根据另一个列表中的索引从列表中获取子列表?

如何根据另一个列表中的索引从列表中获取子列表?

holdtom 2021-10-10 16:52:53
所以,我有 2 个列表,一个包含对象,另一个包含我想要的第一个对象的索引。我想知道C# 中是否有办法根据存储在另一个列表中的索引获取子列表?我是 Linq 的新手,谷歌还没有回答我。还有什么是Python -ic 这样做的方式?当然,我已经在使用简单的循环来实现这一点!List<int> IndexList;List<int> ObjList;List<int> subList;foreach ( var index in IndexList )    subList.Add(ObjList[index]);
查看完整描述

2 回答

?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

您可以编写一个包含索引和项目的查询,以便您可以查看是否IndexList包含索引,并且只选择那些项目:


List<int> subList = ObjList

    .Where((item, index) => IndexList.Contains(index))

    .ToList();


查看完整回答
反对 回复 2021-10-10
?
LEATH

TA贡献1936条经验 获得超6个赞

items = ["a","b","c"]

indexes = [1,2]

mappedList = list(filter(lambda item: items.index(item) in indexes, items))

print(mappedList) # prints: ['b', 'c']

用 python 实现补充 Rufus L 的 c# 答案。


查看完整回答
反对 回复 2021-10-10
  • 2 回答
  • 0 关注
  • 240 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信