У меня есть список A неизвестной длины и объект среза, который указывает важные элементы в этом списке. Как я могу получить соответствующие индексы в виде списка B? (Таким образом, вместо slice(0, 5, 1)
я получаю [0, 1, 2, 3, 4]
) Это должно работать, даже если я не знаю длину списка до определения объекта среза, а также для срезов, таких как s=slice(None, None, 20)
.
My Решение заключается в следующем:
indices_B = list(range(len(my_list_A)))[my_slice]
Это работает, но у меня есть ощущение, что должен быть более разумный способ, который также легче понять. (Использование range(len(somelist))
определенно неправильно)