I want generate a `numpy`

array that represents potential species assemblages (each row is one assemblage) for following condition: Each assemblage comprises of maximum 5 species with maximum 50 individuals per species (in steps of 10). Thus, the final array should have 5 columns (representing each of the five species) and the values in each cell can take {0,10,20,30,40,50}. All possible combinations should be represented in the array.

I managed to do that quite simply in `R`

but due to further processing (of a even larger dataset, n>35*10^6 rows) I would like to switch to `python`

do improve calculation times (using some scipy-biodiversity functions).

Here the rather simple R code which I want to translate into a Python equivalent:

```
Assemblage_generated <- expand.grid(seq(0,50,10),seq(0,50,10),seq(0,50,10),seq(0,50,10),seq(0,50,10))
```

Is there a specific Python function specifically dedicated to do such things?

You have the choice of two methods to do this:

`numpy.meshgrid`

(I think it's the fastest)`itertools`

product