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

Dúvidas em relação às funções __len__

Oi, alguém poderia me explicar melhor o intuito e maiores detalhes da função '___len____', fiquei com dúvida pois não entendi a diferença entre '___len___' e len(), alguém poderia me explicar

6 respostas

Aqui está meu código:

from regex import *

if permissao == True:
    class extrato_argumento:
        def __init__(self, url):
            if self.Url_eh_valida(url):
                self.url = url
            else:
                raise AttributeError("Url inválida!!")

        def __str__(self):
            return "oi"

        @staticmethod
        def Url_eh_valida(url):
            if url:
                return True
            else:
                return False

        def extrai_argumento(self, url):
            indiceFinal = url.find("%")
            indiceInicial = url.find("$")
            indiceFinal1 = url.find("!")
            indiceInicial1 = url.find("@")
            moedaOrigem = url[indiceInicial + 1 : indiceFinal]
            moedaFinal = url[indiceInicial1 + 1 : indiceFinal1]
            valor = url.find("=")
            valorFinal = url[valor + 1 : ]
            if moedaOrigem.lower() == "moedaorigem":
                self.trocaMoedaOrigem(moedaOrigem, valorFinal)
            if moedaFinal.lower() == "moedadestino":
                self.trocaMoeda(moedaFinal, valorFinal)
            else:
                print(f'Conversão de {moedaOrigem} para {moedaFinal}')
                print(f'Estimada no valor de {valorFinal} {moedaOrigem}')

        def trocaMoeda(self, moedaFinal, valorFinal):
            moedaFinal = moedaFinal.replace("moedaDestino", "dolar")
            print(moedaFinal.lower())

        def trocaMoedaOrigem(self, moedaOrigem, valorFinal):
            moedaOrigem = moedaOrigem.replace(moedaOrigem, "real")
            print(f'Estimada no valor de {valorFinal} {moedaOrigem}')
            print(f'Conversão de {moedaOrigem.lower()} para')
else:
    raise TypeError("URL errada!")

extrato_argumento("https://sla")

A classe str também não funciona

solução!

Olá,

Acredito que não há diferença, até onde sei o método len() é uma "abreviação" do método __len__().

Sim, eu sei mas no meu código a função att, não retorna corretamente o valor esperado, você sabe me dizer pq

É só pq eu quero executar o código logo quando inicia mas eu sei lá pq não dá cert

Já tentei de tudo que é jeito e não deu

Não consegui achar o erro mas mesmo assim obrigado Urich :)