# Idiom #163 Print list elements by group of 2

Print all the list elements, two by two, assuming list length is even.

`use List::Util qw(pairs);`
```foreach (pairs @list) {
print "@\$_\n";
}```
`using System.Collections.Generic;`
```for(int i = 0; i < list.Count; i += 2) {
Console.WriteLine(string.Format("{0}, {1}", list[i], list[i + 1]));
}```
`import std.range;`
`list.chunks(2).each!writeln;`
`write (*,'(2I8,:," ")') list`
`import "fmt"`
```for i := 0; i+1 < len(list); i += 2 {
fmt.Println(list[i], list[i+1])
}```
```everySecond :: [a] -> [a]
everySecond [] = []
everySecond (_:[]) = []
everySecond (_:x:xs) = x : everySecond xs
everySecond' :: [a] -> [a]
everySecond' = everySecond . (undefined :)

mapM_ print (zip (everySecond list) (everySecond' list))```
```for (let index = 0; index < list.length; index = index + 2) {
console.log(list[index], list[index + 1])
}```
```foreach(array_chunk(\$list, 2) as \$x) {
echo \$x[0], ' ', \$x[1], PHP_EOL;
}```
```i := Low(L);
while (i < High(L)) do
begin
writeln(L[i],', ', L[i+1]);
Inc(i,2);
end;```
```for x in zip(list[::2], list[1::2]):
print(x)```
`from itertools import tee`
```def pairwise(iterable):
"s -> (s0,s1), (s1,s2), (s2, s3), ..."
a, b = tee(iterable)
next(b, None)
return zip(a, b)

for a, b in pairwise(list):
print(a, b)```
`list.each_slice(2){|slice| p slice}`
```for pair in list.chunks(2) {
println!("({}, {})", pair[0], pair[1]);
}```
```for (pair <- list.grouped(2))
println(s"(\${pair(0)}, \${pair(1)})")```
```Dim ItemList As New List(Of String)(New String() {"one", "one", "two", "two", "three", "three"})
For x = 0 To ItemList.Count - 1 Step 2
Console.WriteLine(ItemList(x) & vbTab & ItemList(x + 1))
Next```

Bzzzzzzzzzz