Есть:
X = (37, 37.5, 38)
Y = (50, 50.5, 51.2, 51.5, 52)
[(x, y) for x in X for y in Y]
[(37, 50), (37, 50.5), (37, 51.2), (37, 51.5), (37, 52),
(37.5, 50), (37.5, 50.5), (37.5, 51.2), (37.5, 51.5), (37.5, 52),
(38, 50), (38, 50.5), (38, 51.2), (38, 51.5), (38, 52)]
А в numpy как ускоряется? Не нашёл функции.
Update.
np.asarray(np.meshgrid(X, Y)).T.reshape(-1, 2)