example is below. What is this? A comma is in the python list-bracket. How can I understand this?

`id(x[i,j]) == id(x[i][j])` shows True. 

So, `x[i,j]` is always same at `x[i][j]`?

or, `x[i,j]` is actually same as `x[(i,j)]`? index is tuple. 

```
import numpy as np
x = np.random.random((64,3,32,10))
for i in range(x.shape[0]):
    for j in range(x.shape[1]):
        print(x[i,j])

```

======  

 I guess 
this is numpy's special implementation. Numpy overwrites "\_getitem\_\_" function for using tuple index. 

I tried it for  

1) basic python  

2) overwrite "\_getitem\_\_ " and  

3) basic numpy.

1) shows error. "TypeError: list indices must be integers or slices, not tuple"  

2) has....no problem if I implemented right.  

3) just works well.

So, I guess numpy developers did implemented their "*getitem*" function for tuple, and it works same arr[x,y,z] == arr[x][y][z].