Python - función que calcule si un string dado es una dirección de email válida

 
Vista:

función que calcule si un string dado es una dirección de email válida

Publicado por bjbio (13 intervenciones) el 26/03/2021 11:06:21
Buenas, llevo varios días intentando resolver la siguiente tarea:

"Calcular una función que calcule si un string dado es una dirección de email válida o no. Para ello debe contener @ y acabar en ".com". Si es valido devolverá True y sino False."

He intentado varios códigos y no consigo que me funcione, agradeceria si alguien pudiese ayudarme.

Adjunto el código que he estado intentando utilizar:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
def validar(email):
    caracterBuscado="@", ".com"
    emailValido=False
    for c in email:
        if c==caracterBuscado:
            return True
    return False
 
 
direccion=input("Tu email: ")
if validar(direccion):
    print("valido")
else:
    print("invalido")


Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

función que calcule si un string dado es una dirección de email válida

Publicado por bjbio (13 intervenciones) el 26/03/2021 16:37:58
Lo he estado revisando y no ve sirve esa manera como tal. Es una tarea que tengo que entrgar y debo utilizar funciones con def. El codigo que yo he utilizado se que hay algun fallo pero no logro averiguar cual.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

función que calcule si un string dado es una dirección de email válida

Publicado por joel (901 intervenciones) el 26/03/2021 17:44:03
pues ponlo dentro de una función...

1
2
3
4
5
6
7
8
9
10
import re
 
def validar(email):
    return re.match('^[(a-z0-9\_\-\.)]+@[(a-z0-9\_\-\.)]+\.[(a-z)]{2,15}$',email.lower()):
 
direccion=input("Tu email: ")
if validar(direccion):
    print("valido")
else:
    print("invalido")

A tu función le queda mucho... tienes que revisar que no haya ningun caracter extraño como interrogante, admiración, ... dos puntos seguidos, dos arrobas, ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar