顶级域名
Coddy 使用 Python 验证电子邮件地址 课程的第 5 课,共 8 课。
john@gmail.com
加粗部分是顶级域名。
顶级域名是互联网域名系统中的最高级别,位于电子邮件地址中的域名之后。
常见的顶级域名有:
- com
- net
- org
挑战
简单为 validate 添加顶级域名验证功能。
在我们的验证器中,我们会采用更简单的规则,检查顶级域名是否为以下域名之一:
- com
- net
- org
- tech
其他任何域名都应返回 False!
亲手试试
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
使用 Python 验证电子邮件地址中的所有课
自己练习: Python 在线编译器