网站首页 > 技术文章 正文
1、编程试题:
编写一个程序来验证一个邮箱地址是否合法。
定义函数is_email_valid(),参数为email。
在函数内,如果邮箱email满足下面提到的条件,则返回True,否则返回False。
要求邮箱有效,必须满足以下条件:
字符串必须包含一个@字符。
字符串必须包含一个.字符。
@必须有至少一个字符在它之前。
.和@必须处于适当的位置。
例如,hello.email@com是无效的,而john.smith@email.com是有效的。
示例输入:user@website.com
示例输出:True
2、代码实现:
可编辑代码如下:
#!/usr/bin/python3.9
# -*- coding: utf-8 -*-
#
# Copyright (C) 2024 , Inc. All Rights Reserved
#
# @Time : 2024/2/2 19:48
# @Author : fangel
# @FileName : 90. 基本邮箱验证.py
# @Software : PyCharm
##########90. 基本邮箱验证
def is_email_valid(email):
flag1 = False
flag2 = False
list1 = []
#步骤1:先获取"@"和"."字符的索引,返回值是-1表示找不到这两个字符
index1 = email.find(".")
index2 = email.find("@")
#判断字符串必须包含一个"@"和"."字符
if index1 != -1 and index2 != -1:
flag1 = True
#步骤2:因为email中可能包含多个".",获取所有"."字符的索引,加入到列表里
for i in range(0,len(email)):
if email[i] == ".":
list1.append(i)
#步骤3:判断.和@必须处于适当的位置 以及 @必须有至少一个字符在它之前
if list1[len(list1)-1] > index2 and index2 > 1:
flag2 = True
#步骤4:当如上条件均满足时返回值才会是True,否则返回False
if flag1 and flag2:
return True
else:
return False
# 获取输入
email = input()
# 调用函数
print(is_email_valid(email))
3、代码分析:
本例分析详见上述代码的注释部分,重点是要满足题目给出的几个条件,均满足才能判断为有效。
4、运行结果:
输入:@website.com
输出:False
输入:john.smith@email.com
输出:True
猜你喜欢
- 2025-05-05 【C++/Python语言插班试听|9月15-17日】爱思创秋季班开课啦!
- 2025-05-05 从清华退学,被微软封杀,牛人王垠:没有一家公司值得我为他工作
- 2025-05-05 Python第11题:盛最多水的容器【leetcode】
- 2025-05-05 Python编程基础:课程导读(python编程入门课 视频)
- 2025-05-05 数据管理与应用试题库(数据管理考试题库)
- 2025-05-05 墙裂推荐,5个学习Python编程最佳的开源库
- 2025-05-05 Python第123题:计算直角三角形底边斜边【PythonTip题库300题】
- 2025-05-05 Python第17题:三数之和【leetcode】
- 2025-05-05 【PythonTip题库精编300题】第34题:数字字符串相加
- 2025-05-05 Python第108题:查找最近的回文数【PythonTip题库300题】
- 263℃Python短文,Python中的嵌套条件语句(六)
- 262℃python笔记:for循环嵌套。end=""的作用,图形打印
- 261℃PythonNet:实现Python与.Net代码相互调用!
- 256℃Python实现字符串小写转大写并写入文件
- 255℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 113℃原来2025是完美的平方年,一起探索六种平方的算吧
- 96℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 87℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)