如何修改Python代码实现输入q时终止程序并输出指定内容?
修正后的代码实现
sum_total = 0 counter = 0 while True: user_input = input("Enter a number (or 'q' to quit): ") # 先判断是否输入终止指令 if user_input.lower() == 'q': break # 处理数字输入,捕获非数字的错误 try: num = int(user_input) counter += 1 sum_total += num print(counter, sum_total) except ValueError: print("请输入有效数字或输入'q'退出") # 循环结束后输出最终统计结果 print(f"最终计数: {counter}, 最终总和: {sum_total}")
核心修改说明
- 原代码一开始就强制把输入转成
int,输入'q'会直接触发类型错误,现在先接收原始输入,判断是否为终止指令后再处理数字转换 - 将终止判断逻辑移到
while循环内部,确保输入'q'时能立即用break跳出循环,而不是放在永远执行不到的循环外 - 把变量名
sum改成sum_total,避免覆盖Python内置的sum()函数 - 修复了原代码中
print(Counter,sum)的大小写错误(变量定义为小写counter,这里写错成大写Counter) - 用
try-except块处理非数字输入的情况,避免程序崩溃 - 替换无效的
quit(原代码中quit是函数需要加括号,且用break更贴合循环终止的场景)
内容的提问来源于stack exchange,提问作者user20095016
相关产品推荐
相关产品推荐

