Я показал решение следующей задачи:
Реализуйте класс ReversedMyList, который будет при создании объекта принимать список и предоставлять доступ к элементам этого списка в обратном порядке.
r = ReversedMyList(lst) — создание экземпляра.
len(r) — количество элементов в обратном списке.
r[i] — доступ к элементам в обратном порядке. Если элемент не может быть возвращен, то возвращаем None.
Мой код:
class ReversedMyList:
def __init__(self, data):
self.data = data
def __len__(self):
return len(self.data)
def __getitem__(self, index):
self.data.reverse()
if self.data and index <= len(self.data)-1:
return self.data[index]
else:
return None
Меня попросили реализовать решение без метода reverse, с помощью отрицательной индексации. Идей реализации у меня нет, может Вы сможете мне подсказать, как реализовать это с помощью отрицательной индексации. Знаю, что логика реализации должна быть в блоке кода функции __getitem__