繁体   English   中英

Haskell-从列表列表中获取n个列表

[英]Haskell - get n number of lists from a list of lists

大家好,我正在尝试从列表列表中获取n个列表。 我想知道haskell中是否有一种方法类似于“ take”和“ drop”方法,但在我的情况下是否可行。 例如:

Input = [ [1,2,3,4], [5,6,7,8], [9,1,2,3], [4,5,6,7], [8,9,1,2], [3,4,5,6] ]

我希望能够从列表列表中获取前三个元素,并得到如下所示的结果:

Output = [ [1,2,3,4], [5,6,7,8], [9,1,2,3]]

我还希望能够从该列表列表中删除前3个元素,并得到如下所示的结果:

Output = [[4,5,6,7], [8,9,1,2], [3,4,5,6]]

是否可以在haskell中执行类似的操作? 谁能为我指出有关解决此问题的正确方向。 提前致谢。

takedrop这样做。 即使元素类型是列表类型,它们对所有元素类型也都相同。

Prelude> take 3 [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16],[17,18,19,20]]
[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
Prelude> drop 3 [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16],[17,18,19,20]]
[[13,14,15,16],[17,18,19,20]]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM