Jupyter notebook I';我假设编写代码来检查用户输入的电子邮件地址是否包含1次出现的"@&引用;及"&引用;。请帮我调试

Jupyter notebook I';我假设编写代码来检查用户输入的电子邮件地址是否包含1次出现的"@&引用;及"&引用;。请帮我调试,jupyter-notebook,Jupyter Notebook,电子邮件=输入(“输入您的电子邮件地址:”) 如果(email.contain(“@”)和email.contain(“.”)): 打印(电子邮件+“是有效的电子邮件地址”) 其他: print(email+“是无效的电子邮件地址”)我们可以使用regex轻松解决此问题 import re EMAIL_REGEX = re.compile(r"^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$") email = input("Enter you

电子邮件=输入(“输入您的电子邮件地址:”)

如果(email.contain(“@”)和email.contain(“.”)): 打印(电子邮件+“是有效的电子邮件地址”) 其他:
print(email+“是无效的电子邮件地址”)

我们可以使用regex轻松解决此问题

import re

EMAIL_REGEX = re.compile(r"^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$")


email = input("Enter your email address:")

if EMAIL_REGEX.match(email):
    print("It's a valid email!")
else:
    print("It's not a valid email!")
输出:

Enter your email address:dinesh@@gmail.com
It's not a valid email!

Enter your email address:dinesh@gmail..com
It's not a valid email

Enter your email address:dinesh@gmail.c.m
It's not a valid email!

Enter your email address:dinesh@gmail.com
It's a valid email!

很明显,这将允许一些无效的电子邮件(很简单,它没有长度限制),但您怎么知道这还不够呢?它应该做什么而不做什么?