1
resposta

Não entendi como funciona o sys.float_info

Alguém pode me explicar porque o menor valor recebeu o sys.float_info.max e o maior valor recebe o sys.float_info.min. Para mim ficou contra intuito um atributo nomeado com menor valor receber a informação de o valor maximo do float.. Se alguém puder exemplificar utilizando os valores em si, agradeço !!!

1 resposta

Olá Gabriel, tudo bem com você?

Peço desculpas pela demora em lhe responder.

Salvando o menor valor no atributo self.maior_lance será garantido que o primeiro lance salvo em lance.valor seja sempre maior do que o valor salvo nesse atributo.

Já no atributo self.menor_lance foi salvo o maior valor possível, assim existe a garantia de que o primeiro lance salvo em lance.valor sempre será menor que o valor salvo no atributo inicialmente. Essa verificação será realizada no método avalia.

def avalia(self, leilao: Leilao):
    for lance in leilao.lances:
        if lance.valor > self.maior_lance:
            self.maior_lance = lance.valor
        elif lance.valor < self.menor_lance:
            self.menor_lance = lance.valor

Sobre os valores iniciais passados pela biblioteca sys. Temos as seguintes informações:

sys.float_info.max: Informa o maior número positivo do tipo float possível. sys.float_info.min: Informa o menor número positivo do tipo float possível.

Para sabermos quais são esses números, basta executarmos o seguinte código.

import sys


print(f'Esse é o maior número do tipo float permitido: {sys.float_info.max}')
print(f'Esse é o menor número do tipo float permitido: {sys.float_info.min}')

Resultado

Esse é o maior número do tipo float permitido: 1.7976931348623157e+308
Esse é o menor número do tipo float permitido: 2.2250738585072014e-308

Esses valores podem mudar de sistema para sistema, dependerá da capacidade de memória do sistema onde é executado o teste.

Para conhecer outras funções do parâmetros float_info da biblioteca sys, poderá ser consultado a seguinte documentação.

Em caso de dúvidas, fico à disposição.

Abraços e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!