You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现邮箱确认一致后再输入手机号的循环逻辑?

实现邮箱确认一致后继续执行后续步骤

你的核心需求是让用户重复确认邮箱,直到两次输入一致,才进入手机号输入环节。当前代码的问题是仅在邮箱不一致时提示重新输入,但没有更新确认邮箱的变量,也没有循环校验逻辑,所以程序会直接往下执行手机号输入。

原始代码问题分析

first = input("Please enter your first name: ")
surname = input("Please enter your surname: ")
email = input("Please enter your email address: ")
emailconfirm = input("Please confirm email address: ")
if email != emailconfirm:
    input ("Emails are different. Please kindly confirm email address: ")
cell = input("Please enter cell number: ")

这段代码里,当邮箱不一致时,input()只是让用户再输入一次,但输入的内容没有赋值给emailconfirm,也没有重新判断是否一致,程序会直接执行最后的手机号输入。

修改后的代码

我们可以用while循环来实现"直到条件满足才停止"的逻辑:

first = input("Please enter your first name: ")
surname = input("Please enter your surname: ")

# 循环获取邮箱确认,直到两次输入一致
email = input("Please enter your email address: ")
while True:
    emailconfirm = input("Please confirm email address: ")
    if email == emailconfirm:
        print("Email confirmed successfully!")
        break  # 一致则退出循环,继续后续步骤
    else:
        print("Emails are different. Please try again.")

# 邮箱确认一致后才执行手机号输入
cell = input("Please enter cell number: ")

代码说明

  • 用while True创建无限循环,直到满足邮箱一致的条件时,用break跳出循环。
  • 每次循环都会重新获取emailconfirm的值,并和初始输入的email对比。
  • 只有当两次输入一致时,才会进入后续的手机号输入步骤。

如果想让用户在邮箱不一致时可以重新输入原邮箱(比如用户第一次输错了原邮箱),可以把原邮箱的输入也放到循环里:

first = input("Please enter your first name: ")
surname = input("Please enter your surname: ")

while True:
    email = input("Please enter your email address: ")
    emailconfirm = input("Please confirm email address: ")
    if email == emailconfirm:
        print("Email confirmed successfully!")
        break
    else:
        print("Emails are different. Please re-enter both.")

cell = input("Please enter cell number: ")

内容的提问来源于stack exchange,提问作者Graeme Markham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 15:15:10