Group
Splits a list into smaller groups (chunks) of a specified size.
python · Community Common Scripts
Details
| ID | Group |
|---|---|
| Language | python |
| From Version | 6.10.0 |
| Docker Image | demisto/python3:3.12.13.7444307 |
| Tags | Utilities |
README
Splits a list into group.
e.g. [1,2,3,4] -> [“1,2”, “3,4”].
Script Data
| Name | Description |
|---|---|
| Script Type | python3 |
| Tags | Utilities |
Inputs
| Argument Name | Description |
|---|---|
| input | An input list. |
| chunk | Size of each group. |
| type | Group as list or string. |
| delimiter | Separate elements using delimiter (If type is String). |
Outputs
| Path | Description |
|---|---|
| Group | The list after grouping. |
from CommonServerPython import argToList from Group import group def test_group_list(): input = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] data = argToList(input) chunk = 5 structure = "List" delimiter = None outputs = group(data, chunk, structure, delimiter) assert outputs == [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]] def test_group_string(): input = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] data = argToList(input) chunk = 5 structure = "String" delimiter = None outputs = group(data, chunk, structure, delimiter) assert outputs == ["1,2,3,4,5", "6,7,8,9,10"] def test_group_list_unequal(): input = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] data = argToList(input) chunk = 7 structure = "List" delimiter = None outputs = group(data, chunk, structure, delimiter) assert outputs == [[1, 2, 3, 4, 5, 6, 7], [8, 9, 10]] def test_group_string_unequal(): input = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] data = argToList(input) chunk = 7 structure = "String" delimiter = None outputs = group(data, chunk, structure, delimiter) assert outputs == ["1,2,3,4,5,6,7", "8,9,10"] def test_group_string_unequal_delimiter(): input = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] data = argToList(input) chunk = 3 structure = "String" delimiter = "-" outputs = group(data, chunk, structure, delimiter) assert outputs == ["1-2-3", "4-5-6", "7-8-9", "10"] def test_group_list_additional(): input = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"] data = argToList(input) chunk = 3 structure = "List" delimiter = "," outputs = group(data, chunk, structure, delimiter) assert outputs == [["1", "2", "3"], ["4", "5", "6"], ["7", "8", "9"], ["10"]] def test_group_string_additional(): input = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"] data = argToList(input) chunk = 3 structure = "String" delimiter = "," outputs = group(data, chunk, structure, delimiter) assert outputs == ["1,2,3", "4,5,6", "7,8,9", "10"]