In Matlab, I can do the following:

```
X = randn(25,25,25);
size(X(:,:))

ans = 
    25   625

```

I often find myself wanting to quickly collapse the trailing dimensions of an array, and do not know how to do this in numpy.

I know I can do this:

```
In [22]: x = np.random.randn(25,25,25)
In [23]: x = x.reshape(x.shape[:-2] + (-1,))
In [24]: x.shape
Out[24]: (25, 625)

```

but `x.reshape(x.shape[:-2] + (-1,))` is a *lot* less concise (and requires more information about `x`) than simply doing `x(:,:)`.

I've obviously tried the analogous numpy indexing, but that does not work as desired:

```
In [25]: x = np.random.randn(25,25,25)
In [26]: x[:,:].shape
Out[26]: (25, 25, 25)

```

Any hints on how to collapse the trailing dimensions of an array in a concise manner?

Edit: note that I'm after the resulting array itself, not just its shape. I merely use `size()` and `x.shape` in the above examples to indicate what the array is like.