Validating Email Addresses With a Filter

  • + 1 comment

    I cannot seem to pass testcase 5, any help?

    def fun(s): if '@' not in s: return False

    try:
        username_website, extension = s.rsplit('.',1)
        username,website = username_website.split('@')
    except ValueError:
        return False
    
    for char in username:
        if not(char.isalnum() or char in ['-','_']):
            return False
    
    if not(website.isalnum()):
        return False
    
    if not (extension.isalpha()) or not(1<=len(extension)<=3):
        return False
    
    return True
    # return True if s is a valid email, else return False
    

    def filter_mail(emails): return list(filter(fun, emails))

    if name == 'main': n = int(input()) emails = [] for _ in range(n): emails.append(input())

    filtered_emails = filter_mail(emails) filtered_emails.sort() print(filtered_emails)