如何将while循环中未捕获的输入值累加到total变量中?
解决循环输入累加的问题
嘿,这问题其实挺典型的——你现在的代码里,int(input())只被用来做循环条件判断了,输入的数值没被保存下来,自然没法加到total里。咱们只需要加个变量存每次的输入值就行,看我给你调整:
修正后的核心代码方案
方案一:更清晰的无限循环写法
total = 0 while True: num = int(input()) if num == 0: break total += num print(total)
方案二:把判断整合到循环条件里
total = 0 num = int(input()) while num != 0: total += num num = int(input()) print(total)
简单拆解逻辑
- 两种方案的核心都是先把输入值存到变量(比如
num)里,这样既可以用它做循环判断,也能拿来累加。 - 方案一用
while True做无限循环,每次先获取输入,判断是0就跳出,逻辑更直观,还避免了重复写int(input())。 - 方案二是先获取一次输入再进入循环,循环内累加后再获取下一次输入,也能实现需求。
额外优化:处理非整数输入
如果担心用户输入非数字导致程序崩溃,可以加个异常处理:
total = 0 while True: try: num = int(input()) if num == 0: break total += num except ValueError: print("请输入有效的整数哦!") print(total)
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

