Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Por que return self.__lances[:] não funciona?

Por que retornar uma cópia da lista falha o teste? A cópia da lista não seria suficiente para o método de teste adicionar os lances com .append e ter sucesso na verificação? Exemplo usado na aula: self.leilao.lances.append(self.lance_do__gui)

2 respostas
solução!

Bom dia Rodolfo,

O return self.__lances[:] retornará uma cópia para visualização, mas não é a variável original self.__lances, apesar de visualmente representar a mesma coisa.

Portando você não consegue acessar a variável original usando o método append através da cópia.

Pense que ao fazer self.__lances[:] você está representando um novo elemento que vai desde o primeiro elemento da lista original até o último. Mas mesmo que esteja representando ele, não significa que ele é a lista original.

Espero que tenha entendido.

Estou à disposição. Bons estudos!

Oi João.

Acho que entendi.

Obrigado pela ajuda.