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

Python列表追加问题:无法按预期添加多个不同输入值

解决方法:按指定次数读取多个输入值并添加到列表

原代码问题分析

  • 仅在循环外部读取一次输入值,导致列表中反复添加的都是第一个输入的数值,没有读取后续输入
  • 循环条件x <= num_of_floats错误,会让循环执行次数比指定次数多1次(例如输入5时,会执行6次循环)

修正后的代码(while循环版本)

num_of_floats = int(input())
data_nums = []
x = 0
while x < num_of_floats:
    # 每次循环读取新的输入值
    user = float(input())
    data_nums.append(user)
    x += 1
print(data_nums)

更简洁的列表推导式版本

num_of_floats = int(input())
# 直接通过列表推导式生成目标列表
data_nums = [float(input()) for _ in range(num_of_floats)]
print(data_nums)

修正说明

  1. 将输入读取操作移到循环内部,确保每次循环都获取新的用户输入
  2. 调整循环条件为x < num_of_floats,保证循环执行次数与指定的num_of_floats完全一致
  3. 列表推导式版本利用Python语法糖,用更简洁的方式实现需求,可读性和效率更优

内容的提问来源于stack exchange,提问作者Ronaldo Gomez Santos

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 23:46:00