Domena najwyższego poziomu
Lekcja 5 z 8 w kursie Walidator adresów e-mail w Python w Coddy.
john@gmail.com
Pogrubiona część to nazwa domeny najwyższego poziomu.
Domeny najwyższego poziomu stanowią najwyższy poziom systemu nazw domen w Internecie i znajdują się po nazwie domeny w adresie e-mail.
Popularne domeny najwyższego poziomu to:
- com
- net
- org
Wyzwanie
ŁatwyDodaj do validate obsługę walidacji nazwy domeny najwyższego poziomu.
W naszym walidatorze będziemy obsługiwać prostsze warunki — sprawdź, czy nazwa domeny najwyższego poziomu jest jedną z poniższych:
- com
- net
- org
- tech
Każda inna nazwa powinna zwracać False!
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
return True
Wszystkie lekcje w sekcji Walidator adresów e-mail w Python
1Wprowadzenie
WprowadzeniePoćwicz samodzielnie: Kompilator Python online