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

Python如何将华氏度列表转换为摄氏度并解决列表与整数运算报错

报错原因解释

你收到的报错unsupported operand type(s) for -: 'list' and 'int'翻译为:不支持「列表」和「整数」执行减法操作。
核心问题有两个:

  • Python原生列表不支持直接和整数做算术运算,你代码里直接写fah - 32相当于用整个列表减32,不符合语法要求
  • 你的while循环没有对count做递增操作,运行后会进入无限循环,循环内定义的lst变量也没有实际使用
可行的实现方案

方案1:列表推导式(最简洁的写法)

直接遍历列表中的每一个华氏度值做转换:

fah = [89.8, 67.0, 92, 99]
cen = [(x - 32) * 5 / 9 for x in fah]
print(cen)

方案2:修正后的while循环写法

如果你需要保留循环逻辑,调整代码如下即可:

fah = [89.8, 67.0, 92, 99]
count = 0
cen = []
while count < len(fah):
    current_fah = fah[count]
    current_cen = (current_fah - 32) * 5 /9
    cen.append(current_cen)
    count += 1
print(cen)

如果需要对转换后的摄氏度保留指定小数位,可以在计算时用round()函数处理,比如round((x - 32) * 5 / 9, 2)即可保留2位小数。

内容的提问来源于stack exchange,提问作者Muskaan Sharma

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 06:00:02