Menu
Coddy logo textTech

Nazwa domeny

Lekcja 4 z 8 w kursie Walidator adresów e-mail w Python w Coddy.

john@gmail.com

Pogrubiona część to nazwa domeny.

Nazwa domeny to ciąg liter i cyfr, który określa przestrzeń w Internecie należącą do konkretnego dostawcy skrzynki pocztowej lub organizacji i przez nich kontrolowaną.

Nazwy domen mogą mieć maksymalnie 253 znaki i składają się z:

  • Wielkich i małych liter alfabetu angielskiego (A-Z, a-z)
  • Cyfr od 0 do 9 
  • Łącznika (-)
  • Kropki (.)  (używanej do identyfikacji subdomeny; na przykład  creator.coddy)
challenge icon

Wyzwanie

Łatwy

Dodaj do validate obsługę walidacji nazwy domeny.

W naszym walidatorze zastosujemy prostsze zasady: nazwa odbiorcy powinna mieć maksymalnie 12 znaków i co najmniej 3 znaki oraz składać się z:

  • Wielkich i małych liter alfabetu angielskiego (A-Z, a-z)
  • Cyfr od 0 do 9
  • Łącznika (-)

Tak jak wcześniej, funkcja validate powinna zwracać true, jeśli wejściowy adres e-mail jest prawidłowy, a teraz także uwzględniać walidację nazwy domeny

Nie musisz obsługiwać subdomen; możesz założyć, że nie istnieje nazwa domeny zawierająca kropkę (.).

Spróbuj swoich sił

PERMITS = '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:
            return False
    if '.' == recipient_name[0] or '.' == recipient_name[-1] or '_' == recipient_name[0] or '_' == recipient_name[-1]:
        return False
    return True
    

Wszystkie lekcje w sekcji Walidator adresów e-mail w Python

Poćwicz samodzielnie: Kompilator Python online