Acesso a Itens
Os métodos de acesso a itens são métodos especiais em Python que permitem que objetos definam seu comportamento quando acessados usando a notação de colchetes [].
__getitem__
O método mágico __getitem__ é usado para definir o comportamento da notação de colchetes para acessar itens em instâncias da sua classe.
## ... (código anterior em sequence.py)
def __getitem__(self, index: int) -> object:
"""Retorna o item no índice fornecido."""
return self.data[index]
__setitem__
O método mágico __setitem__ é usado para definir o comportamento da notação de colchetes para definir itens em instâncias da sua classe.
## ... (código anterior em sequence.py)
def __setitem__(self, index: int, value: object) -> None:
"""Define o item no índice fornecido para o valor fornecido."""
self.data[index] = value
__delitem__
O método mágico __delitem__ é usado para definir o comportamento da palavra-chave del quando aplicada a instâncias da sua classe.
## ... (código anterior em sequence.py)
def __delitem__(self, index: int) -> None:
"""Remove o item no índice fornecido."""
del self.data[index]
Exemplo: Usando os Métodos de Acesso a Itens
Agora que definimos os métodos de acesso a itens para nossa classe MySequence, vamos ver como eles funcionam em item_access_example.py:
from sequence import MySequence
## Cria um objeto MySequence
my_seq = MySequence([1, 2, 3, 4, 5])
## Testa o método mágico __getitem__
print(my_seq[2]) ## Saída: 3
## Testa o método mágico __setitem__
my_seq[2] = 9
print(my_seq[2]) ## Saída: 9
## Testa o método mágico __delitem__
del my_seq[2]
print(len(my_seq)) ## Saída: 4
print(my_seq.data) ## Saída: [1, 2, 4, 5]
Em seguida, digite o seguinte comando no terminal para executar o script.
python item_access_example.py