That's because mode doesn't exist. The number of unique element in y and the total element in y are same so no mode exits by definition.
np.size(np.unique(y)) - np.size(y)
>>> 0
Mode doesn't exist can also be verified by looking at the histogram (flat in the present case). Peaks in this graph represents mode and since we cann't find a peak, mode is None.

Edit: If you want to really find the mode then
- Draw enough samples from the distribution. So that it reflects the original pdf
- Adjust the precision (I have rounded it off to 1 decimal place). Consequently, the model will have a error range accordingly.
import numpy as np
from numpy.random import rand,randn
import statistics as st
y = randn(10000000)
st.mode(list(np.round(y,1)))
This gives
>>> 0.0
Following is the hist (See now you also get a peak at 0.0)
