```
a = [1, 2, 3, 4, 5, 6]
group_adjacent = lambda a, k: zip(*([iter(a)] * k))
group_adjacent(a, 3)
[(1, 2, 3), (4, 5, 6)]
group_adjacent(a, 2)
[(1, 2), (3, 4), (5, 6)]
group_adjacent(a, 1)
[(1,), (2,), (3,), (4,), (5,), (6,)]
```

```
a = [1, 2, 3, 4, 5, 6]
group_adjacent = lambda a, k: zip(*([iter(a)] * k))
group_adjacent(a, 3)
[(1, 2, 3), (4, 5, 6)]
group_adjacent(a, 2)
[(1, 2), (3, 4), (5, 6)]
group_adjacent(a, 1)
[(1,), (2,), (3,), (4,), (5,), (6,)]
```