# Make a checkerboard

I am making a checkerboard pattern of zeroes and ones. It would be an 8x8 array.
So far, the loop adds lists of 0,1,0,1,0,1,0,1 and 1,0,1,0,1,0,1,0 into an empty list.

``````z_first = np.tile([0,1], 4)
o_first = np.tile([1,0], 4)

row_number = 0
board = []
while row_number < 8:
if row_number % 2 == 0:
board.append(list(z_first))
else:
board.append(list(o_first))
row_number += 1
np.array(board)
print(board)
``````

The output:

``````[[0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0], [0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0], [0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0], [0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0]]
``````

`board.shape` throws the error “'List 'object has no attribute ‘shape.’” The checkerboard is a list despite using np.array on it. How would I make this a 2D array?

`np.array()` returns an array. You are discarding the return value by calling `np.array(board)` only.

Adding the line `board = np.array(board)` made it an array.