函数式编程:将列表划分为给定大小的较小列表的习语?

Posted

技术标签:

【中文标题】函数式编程:将列表划分为给定大小的较小列表的习语?【英文标题】:functional programming: idiom for dividing a list into smaller lists of given size? 【发布时间】:2011-11-14 22:15:26 【问题描述】:

假设我有一个列表,想将它分成n 大小的子列表,最后一个子列表可能比其他的小。这是函数式编程中的常见习语吗?如果有,它叫什么?

使用此函数的一个示例是批量处理列表中的项目。

我只能找到一个实现此功能的库 - Google Guava Iterables#partition(Iterable, int)

【问题讨论】:

【参考方案1】:

我不敢相信只有番石榴有这个。

php 中称为array_chunk 在 Scala 中称为grouped 在 Ruby 中是each_slice

【讨论】:

我想它毕竟不是那么难找。不过,这个函数似乎没有通用名称。

以上是关于函数式编程:将列表划分为给定大小的较小列表的习语?的主要内容,如果未能解决你的问题,请参考以下文章

在字典中添加新列表或附加到列表(如果存在)是不是有一个很好的习语?

是否有“从列表的开头选择并减少直到结果满足谓词”的函数式编程习语?

如何在 python 中创建一个函数,它将整数列表作为输入并输出只有两个值的较小列表?

根据 bin 大小将列表划分为多个列表

Java8学习必备——函数式编程思维三种基本构造单元和各类函数式语言的演示

为啥 `while ((ch = getchar()) != EOF)` 是常见的习语? [关闭]