Sorry if this question has already been answered (I couldn't find anything relevant), but how would I initialize a 3 dimensional array without using loops or hard-coding the values?

I want to create a 3-dim. array with shape (x,y,2) and initialize it so that the values in the third axis represent the indices for the first two axes. For example, [[[0, 0], [0, 1], [0, 2]],[[1, 0], [1, 1], [1, 2]]]. I don't want to use loops to do it (although that would be very simple to do) because the actual dimensions would be quite large (it's for an image-processing application) and I want to avoid using loops wherever possible.

This is the obvious way:

```py
arr = np.empty((600,800,2))
for row in range(600):
    for col in range(800):
        arr[row,col] = [row,col]

```

Is there a more efficient, numpy-like way to do this?