1
resposta

Terminal não retorna nada

Copiei o código do vídeo mas na hora de testar não aparece nada no terminal

#TelefonesBr.py

import re

class TelefonesBr: def init(self, telefone): if self.valida_telefone(telefone): self.numero = telefone else: raise ValueError("Número incorreto!")

def valida_telefone(self, telefone):
    padrao = "[0-9]{2}[0-9]{4,5}[0-9]{4}"
    resposta = re.findall(padrao,telefone)
    if resposta:
        return True
    else:
        return False



#main.py

from TelefonesBr import TelefonesBr import re

telefone = "2126481234"

telefone_objeto = TelefonesBr(telefone)

1 resposta

TelefonesBr.py

import re

class TelefonesBr: 

    def init(self, telefone): 
        if self.valida_telefone(telefone): 
            self.numero = telefone 
        else:
             raise ValueError("Número incorreto!")

    def valida_telefone(self, telefone):
        padrao = "[0-9]{2}[0-9]{4,5}[0-9]{4}"
        resposta = re.findall(padrao,telefone)
        if resposta:
            return True
        else:
            return False

Você precisa fazer, no final do arquivo main.py, o seguinte código:

# isso no arquivo main.py

if __name__ == "__main__" :
    telefone = "2126481234"
    telefone_objeto = TelefonesBr(telefone)

Esse if name == "main" é bem descrito neste artigo da Alura: https://www.alura.com.br/artigos/o-que-significa-if-name-main-no-python