2
respostas

Não está retornando True

Não consegui obter o mesmo resultado apresentado durante o vídeo, mesmo o argumento1 e argumento2 sendo o mesmo, ele ainda está me retornando "False"

    def __eq__(self, outra):
        return self.url == outra.url
--------------------------------------------------------------------------------------------------
url = "https://bytebank.com/cambio?moedaorigem=moedadestino&moedadestino=dolar&valor=1500"

argumentosUrl = ExtratorArgumentosUrl(url)
argumentosUrl2 = ExtratorArgumentosUrl(url)

print(id(argumentosUrl))
print(id(argumentosUrl2))
print(argumentosUrl == argumentosUrl2)
2 respostas

Oi Murilo, tudo bem?

Fiz um pequeno teste com o código que você apresentou e o retorno é o esperado: True. Por exemplo:

class ExtratorArgumentosUrl:

    def __init__(self, url):
        self.url = url

    def __eq__(self, outra):
        return self.url == outra.url


url = "https://bytebank.com/cambio?moedaorigem=moedadestino&moedadestino=dolar&valor=1500"

argumentosUrl = ExtratorArgumentosUrl(url)
argumentosUrl2 = ExtratorArgumentosUrl(url)

print(id(argumentosUrl))
print(id(argumentosUrl2))
print(argumentosUrl == argumentosUrl2)

Para que possamos ser mais assertivos quanto ao seu erro, poste o código completo para que possamos analisá-lo.

Fico no aguardo.

Bom dia Nádia, ele voltou a retornar True. Não sei porque antes não tava dando certo, mas agora sem nenhuma mudança no código ele retorna o esperado.

Muito obrigado pela ajuda