Позволяет задать поведение при инициализации элемента контейнера значением.
object.__setitem__(self, key, value)
self -- Ссылка на экземпляр.

key -- Ключ, которым адресуется элемент контейнера.

value -- Значение, которое ставится в соответствие указанному ключу.

Метод присущ контейнерам и вызывается при выполнении инструкций вида obj[key] = value.

class MyContainer(object):

def __init__(self):
self.storage = {}

def __setitem__(self, key, value):
self.storage[key] = value

def __getitem__(self, key):
return self.storage[key]


my_container = MyContainer()
my_container['a'] = 'b'
my_container['a'] # b
my_container['q'] # KeyError

Данный метод обычно реализуют для:


На заметку
В случае попытки использования неподдерживаемых значений, метод должен поднимать исключения, упомянутые в описании .__getitem__().

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