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

为何Python循环内打印列表会输出多组累加结果?求解决办法

摄氏度转开尔文代码输出多次列表的问题解决

原因

你把print(kelvin_values)写在了for循环内部,循环每执行一次(处理一个温度值),就会打印一次当前的kelvin_values列表状态,因此会输出三次逐步添加元素的列表,而非最终的完整列表。

解决方法

将print语句移到for循环外部,等所有温度值转换完成、列表构建完毕后再打印:

修改后的代码:

degrees_values = [0, 5.85, -2.5]
kelvin_values = []
for degrees in degrees_values:
    kelvin = degrees + 273.15
    kelvin_values = kelvin_values + [kelvin]
print(kelvin_values)  # 移至循环外部

另外补充一个小优化:列表添加元素时,使用append()方法比kelvin_values = kelvin_values + [kelvin]更高效,优化后代码如下:

degrees_values = [0, 5.85, -2.5]
kelvin_values = []
for degrees in degrees_values:
    kelvin = degrees + 273.15
    kelvin_values.append(kelvin)  # 使用append添加元素
print(kelvin_values)

运行上述代码都会得到你期望的输出:

[273.15, 279.0, 270.65]

内容的提问来源于stack exchange,提问作者Matt Gwatkin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 04:50:26