簡體   English   中英

如何根據另一個列表中的索引從列表中獲取子列表?

[英]How to get a SubList from a list based on indices in another List?

所以,我有 2 個列表,一個包含對象,另一個包含我想要的第一個對象的索引。

我想知道C# 中是否有辦法根據存儲在另一個列表中的索引獲取子列表?
我是 Linq 的新手,谷歌還沒有回答我。
還有什么是Python -ic 這樣做的方式?

當然,我已經在使用簡單的循環來實現這一點!

List<int> IndexList;
List<int> ObjList;
List<int> subList;


foreach ( var index in IndexList )
    subList.Add(ObjList[index]);

您可以編寫一個包含索引和項目的查詢,以便您可以查看IndexList包含索引,並且只選擇這些項目:

List<int> subList = ObjList
    .Where((item, index) => IndexList.Contains(index))
    .ToList();
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# 答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM