Если он по-прежнему вас интересует, вы можете избавиться от одного цикла for
и использовать numpy.arange()
в сочетании с пониманием списка и numpy.hstack()
, чтобы получить желаемое. Сказав, что нам все еще нужен по крайней мере один цикл for
, чтобы сделать это (потому что ни range
, ни arange
не принимают последовательность конечных точек)
t1 = [0,13,22]
t2 = [4,14,25]
np.hstack([np.arange(r[0], r[1]+1) for r in zip(t1, t2)])
# outputs
array([ 0, 1, 2, 3, 4, 13, 14, 22, 23, 24, 25])
Тем не менее, я не знаю, насколько более производительным это будет для вашего конкретного случая.