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

Python While循环控制结构求助:统计用户输入正确名称的尝试次数

修正Python循环计数器代码实现需求

我来帮你搞定这个程序的实现,先看看你的代码里存在的几个小问题,再给出正确的版本:

原代码的问题

  • 变量name在循环开始前没有定义,第一次判断name != user会直接抛出NameError
  • Python里关键字while必须小写,你写的While会被当成普通变量,触发语法错误
  • While name == user continue这句完全不符合语法逻辑,不需要这样的语句

正确实现代码(两种可选写法)

写法一:用无限循环+break(逻辑更直观)

counter = 0
target_user = "Joe"

while True:
    # 每次循环获取用户输入
    name = input("请输入名称:")
    # 每输入一次就计数+1
    counter += 1
    # 判断输入是否匹配目标名称,匹配则退出循环
    if name == target_user:
        break

# 循环结束后输出结果
print(f"你总共尝试了 {counter} 次,成功输入正确名称!")

写法二:初始化变量后用条件循环

counter = 0
target_user = "Joe"
# 先初始化name变量,避免第一次判断报错
name = ""

while name != target_user:
    name = input("请输入名称:")
    counter += 1

print(f"尝试次数:{counter}")

代码说明

  • 两种写法都能实现需求:只有输入「Joe」时结束循环,同时统计所有尝试次数(包括最后一次正确输入的那次)
  • 第一种用while True构建无限循环,通过break主动退出,逻辑更清晰,适合需要在循环中间判断退出条件的场景
  • 第二种先初始化name,再用name != target_user作为循环条件,写法更简洁

内容的提问来源于stack exchange,提问作者Mohseen Ramjan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:49:38