Чистая логика приведет вас туда.
Для списка f
и максимальной длины x
действительные начальные точки ваших случайных срезов ограничены 0, len(f)-x
:
0 1 2 3
f = [1,5,3,7,4,8]
Таким образом, вся действительная начальная точка может быть выбрана с помощью random.randrange(len(f)-x+1)
(где +1
- потому что randrange
работает как range
).
Сохраните случайную начальную точку в переменной start
и нарежьте свой массив с помощью [start:start+x]
, или проявите изобретательность и используйте другой срез после первого:
result = f[random.randrange(len(f)-x+1):][:3]