Позволяет задать поведение при обращении к элементу контейнера.
Прототип
object.__getitem__(self, key)
Параметры
self -- Ссылка на экземпляр.

key -- Ключ, которым адресуется элемент контейнера.
Описание
Метод присущ контейнерам и вызывается при выполнении инструкций вида obj[key].

    from string import ascii_letters


class MyContainer(object):

def __getitem__(self, key):
return ascii_letters[key]


my_container = MyContainer()
my_container[0] # a
my_container[16] # q

  • Если ключ является неподдерживаемым типом, можно поднять исключение TypeError.
  • Для последовательностей: если ключ выходит за пределы поддерживаемых ключей (в том числе, после интерпретации отрицательных значений), долно подниматься исключение IndexError.
  • Для отображений: если ключ отсутствует в отображении, должно подниматься исключение KeyError.

На заметку
Для последовательностей key должен являться целым, либо срезом. При этом в методе может быть реализована интерпретация отрицательных индексов.

Внимание
Цикл for in для правильного определения конца последовательности ожидает, что для недопустимых индексов возбуждается исключение IndexError.

На заметку
Существует родственный метод .__setitem__().


Синонимы поиска: __пуешеуь__

Нет обсуждений для отображения.
Если у вас есть, что сказать, можете представиться и исправить ситуацию.