Menu
Coddy logo textTech

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
challenge icon

Wyzwanie

Łatwy

Dodaj 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

Poćwicz samodzielnie: Kompilator Python online