Ostatnie dodatki
Lekcja 7 z 8 w kursie Walidator adresów e-mail w Python w Coddy.
Na koniec dodajmy jasne komunikaty dla użytkownika.
Wyzwanie
ŁatwyDodaj do swojego programu następującą obsługę:
- zamiast wyświetlać
TruelubFalse, wyświetlaj"Email is valid"lub"Email is invalid"zależnie od przypadku. - zanim użytkownik zostanie poproszony o dane wejściowe, wyświetl komunikat "
Enter email:"i przejdź do nowej linii.
Spróbuj swoich sił
PERMITS_RECIEPENT = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789._'
PERMITS_DOMAIN = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-'
def validate(email):
if not email.count('@') == 1:
return False
recipient_name = email.split('@')[0]
if len(recipient_name) > 24 or len(recipient_name) < 3:
return False
for c in recipient_name:
if c not in PERMITS_RECIEPENT:
return False
if '.' == recipient_name[0] or '.' == recipient_name[-1] or '_' == recipient_name[0] or '_' == recipient_name[-1]:
return False
domain_name = email.split('@')[1].split('.')[0]
if len(domain_name) > 12 or len(domain_name) < 3:
return False
for c in domain_name:
if c not in PERMITS_DOMAIN:
return False
top_level_domain_name = email.split('@')[1].split('.')[1]
if top_level_domain_name not in ['com', 'org', 'net', 'tech']:
return False
return True
if __name__ == "__main__":
email = input()
is_valid = validate(email)
print(is_valid)Wszystkie lekcje w sekcji Walidator adresów e-mail w Python
1Wprowadzenie
WprowadzeniePoćwicz samodzielnie: Kompilator Python online