当前位置: 首页 > 面试题库 >

将列表切成子列表的列表

颛孙庆
2023-03-14
问题内容

对于任意长度的子列表,将列表切成切片的子列表节列表的最简单,合理有效的方法是什么?

例如,如果我们的源列表是:

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

我们的子列表长度为3,然后我们寻求:

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

同样,如果我们的子列表长度为4,则我们寻求:

output = [ [1, 2, 3, 4], [5, 6, 7, 8], ... ]

问题答案:

[input[i:i+n] for i in range(0, len(input), n)] # Use xrange in py2k

n块的长度在哪里。

由于您没有定义当不能将中的元素input除时,新列表的最后一个元素可能发生的情况n,因此我认为这并不重要:如果n等于7,则您将得到的最后一个元素等于2
。例如。



 类似资料:
  • 问题内容: 我用来填充包含HTML无序列表()的模板。 这些中的大多数没有那么长,但是有一些长度却很可笑,实际上可以容纳2-3列。 有没有HTML,ColdFusion或JavaScript(我接受jQuery解决方案)的方法可以轻松地做到这一点?为了节省一些滚动,不值得使用过于复杂的重量级解决方案。 问题答案: 所以我从A List Apart CSS Swag:Multi-ColumnList

  • 我对Haskell有点陌生,我试图生成列表的所有连续子列表。 我目前有以下几点: 我知道上面的函数会在删除最后一个元素的情况下生成子列表,但我不知道如何完成伪代码。 我的伪代码基本上是, 拿着完整的清单,去掉尾巴。将(x:xs)的xs传递到列表子列表中 例如,xs=[1,2,3][xs]列表子列表(init xs)将生成[1,2,3,4]、[1,2,3]、[1,2]、[1]、[1]、[1],[1]

  • 给定需要排序和分组的对象列表: 我想将列表分组为列表中的列表,按widgetCode分组,每个子列表的元素按照它们在原始列表中遇到的顺序排列。我知道可以使用收集器将它们分组到列表映射中: 我并不认为键是理所当然地排序的,所以我采取了额外的步骤,将整个内容加载到SortedMap类型中: 我知道我可以通过使用.values()从sortedWidgetMap获取集合,而且我猜它是一个有序集合,因为它

  • 问题内容: 现在,我想创建一个新列表,其中包含中的所有值。这里的结果应该包含 问题答案: 使用以下方法尝试:

  • 问题内容: 我有这个清单(): 我想要这样的东西: 换句话说,我想使用值作为分隔符将列表拆分为子列表,以获得列表列表()。我正在寻找Java 8解决方案。我已经尝试过,但是我不确定这是我要找的东西。谢谢! 问题答案: 我目前想出的唯一解决方案是实现自己的自定义收集器。 在阅读解决方案之前,我想添加一些有关此的注释。我将这个问题更多地当作编程练习,我不确定是否可以使用并行流来完成。 因此,您必须意识

  • 问题内容: 假设我有一个由列表列表组成的矩阵,如下所示: 同样,假设我有一个具有相同结构的numpy矩阵,称为: 使用numpy,我可以得到这个矩阵的子矩阵,如下所示: 我可以像这样在纯Python中复制numpy矩阵切片: 这不是世界上最容易阅读的东西,也不是最有效的:-) 问题:是否有更简单的方法(在纯Python中)将任意矩阵切片为子矩阵? 问题答案: 您还可以通过定义以下子类来模仿NumP