Позволяет задать поведение при обращении к элементу контейнера.
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__().


Синонимы поиска: __пуешеуь__
Нет обсуждений для отображения.

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

На заметку
В соответствующем разделе вы можете зарегистрировать сообщество по интересам, чтобы о нём узнали и другие посетители сайта — возможно, так вы отыщите новых единомышленников и друзей.. И не важно виртуальное оно, или вполне реальное, давно существующее, или только-только придуманное.