Python编程求助:用while循环实现指定数量整数求和遇问题
问题分析与修正方案
你的代码存在三个核心问题,导致无法实现需求:
- 列表初始化错误:
my_list = [number]把用户输入的「整数数量」当成了第一个待求和的整数存入列表,最终列表里会混入数量值,且实际收集的目标整数数量会少一个。 - 错误的中间计算:
print(user_input+number)是将当前输入的整数与数量相加,并非累加所有输入的整数求和。 - 缺少最终求和输出:代码仅打印了输入的列表,没有输出用户需要的总和结果。
修正后的代码
number = int(input('Enter how many integers: ')) my_list = [] total = 0 while len(my_list) < number: user_input = int(input('Enter an integer: ')) my_list.append(user_input) total += user_input # 累加每个输入的整数到总和 print(f"输入的整数列表: {my_list}") print(f"总和为: {total}")
关键修正说明
- 初始化空列表
my_list,专门存储用户输入的目标整数;同时初始化total为0,用于累计求和。 - 循环条件
len(my_list) < number保证我们恰好收集到用户指定数量的整数。 - 每次输入整数后,将其加入列表并累加到
total中,最后统一输出列表和总和。 - 修正了输入提示的语法问题:将"a integer"改为"an integer"。
内容的提问来源于stack exchange,提问作者Dutywar
相关产品推荐
相关产品推荐

