Скажем, у меня есть массив значений степени, например:
DEGREES = [
0, 15, 30, 45, 60,
75, 90, 105, 120,
135, 150, 165, 180,
195, 210, 225, 240,
255, 270, 285, 300,
315, 330, 345,
]
Я выбрал бы угол и затем смог бы разделить этот гипотетический круг, чтобы упростить поиск кратчайшего пути к цели.
Сказав это, как я могу выбрать конкретное значение, например, 90
, и затем иметь возможность найти предыдущие 12 элементов за этим, включая индекс, оборачивающийся до конца?
Итак, взяв это более раннее значение и применив к этому списку, я получу что-то вроде этого:
[90, 75, 60, 45, 30, 15, 0, 345, 330, 315, 300, 285, 270]
Используя обозначение среза, я попытался сделать это:
index = DEGREES.index(90)
print(DEGREES[index-12:index]) # start 12 values back, stop at index
Но это только печатает пустой массив.
Есть ли способ нарезать список, чтобы я мог получить 12 предыдущих значений за индекс, который я использую?
РЕДАКТИРОВАТЬ:
Это оказалось проблемой XY, мой плохой. Первоначально я пытался создать систему плавного вращения в Pygame, но мои попытки вычислить углы не работали, я задал этот вопрос, чтобы решить проблему с еще одной идеей, которую я пытался реализовать. В итоге я принял ответ, который помог мне настроить систему плавного вращения, но ниже приведены соответствующие ответы на первоначальный вопрос.