no codigo abaixo sempre que passo o numero da numero invalido
import re
class TelefoneBr:
def __init__(self, telefone):
if(self.valida_telefone(telefone)):
self.numero = telefone
else:
raise ValueError("numero invalido")
def __str__(self):
return self.format_numero()
def valida_telefone(self, telefone):
padrao = "([0-9]{2,3})? ([0-9]{2}) ([0-9]{4,5}) ([0-9]{4})"
resposta = re.findall(padrao, telefone)
if(resposta):
return True
else:
return False
def format_numero(self):
padrao = "([0-9]{2,3})? ([0-9]{2}) ([0-9]{4,5}) ([0-9]{4})"
resposta = re.search(padrao, self.numero)
numero_formatado = "+{} ({}){}-{}".format(
resposta.group(1),
resposta.group(2),
resposta.group(3),
resposta.group(4)
)
return numero_formatado
celular = "5561999036098"
telefone_objeto = TelefoneBr(celular)