ListTools
Slice
slice a 1-D container into a sequence of sub-containers with the number of elements in each sub-container differing by at most one
Calling Sequence
Parameters
Description
Examples
Compatibility
Slice( Container, numslices, slicesreturned )
Container
-
container (list, set, or 1-D rtable), to be sliced into sub-containers
numslices
positive integer, specifying the target number of sub-containers
slicesreturned
(optional) positive or negative integer, or list/set of positive or negative integers, specifying which sub-containers are to be returned. The default is [seq(1..numslices)].
The command slices a container into a sequence of sub-containers with the number of elements in each sub-container differing by at most one.
If not all the sub-containers are of the same length, the longer containers appear first.
Elements in the returned sequence of sub-containers appear in the same order as the original container.
If the specified number of sub-containers is greater than the number of elements in the original container, then the container is sliced into sub-containers of single elements, followed by empty sub-containers.
When the optional parameter slicesreturned is passed, only the specified sub-containers are computed and returned. Note that an error will be thrown if 0, or any number larger than numslices or smaller than -numslices, is passed.
with⁡ListTools:
Example 1
Slice⁡,1
Slice⁡,2
,
Example 2
L≔a,b,c,d,e
Slice⁡L,1
a,b,c,d,e
Slice⁡L,2
Slice⁡L,3
Slice⁡L,4
Slice⁡L,5
Slice⁡L,6
a,b,c,d,e,
Slice⁡L,3,1,3
a,b,e
Slice⁡L,3,2
c,d
Example 3
S≔a,b,c,d
Slice⁡S,3
a,b,c,d
Example 4
V≔seq⁡1..12
Slice⁡V,3
1234,5678,9101112
Slice⁡V,4,1,−1
123,101112
The ListTools[Slice] command was introduced in Maple 2020.
For more information on Maple 2020 changes, see Updates in Maple 2020.
The ListTools[Slice] command was updated in Maple 2021.
The Container parameter was updated in Maple 2021.
The slicesreturned option was introduced in Maple 2021.
For more information on Maple 2021 changes, see Updates in Maple 2021.
See Also
ListTools[Deal]
ListTools[LengthSplit]
Download Help Document