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

Python循环计算无法运行:TypeError报错问题求助

解决Python代码中的TypeError: 'int' object is not iterable错误

嘿,我一眼就发现问题所在了——你遇到的这个TypeError完全是变量名重复使用导致的冲突!

问题根源

你最初定义了列表MT = [2,3,4,5,6,7],但在最内层的循环里,你写了:

for MT in MTBR:

这行代码会把原本指向列表的MT变量,重新赋值为MTBR里的每一个数值元素(比如第一次循环是7.5,然后是8,直到最后变成6)。

当第一轮完整的嵌套循环执行完后,MT已经不是原来的列表了,而是变成了MTBR的最后一个元素——整数6。这时候下一次外层循环执行到for m in MT:时,Python尝试去迭代一个整数6,自然就抛出了TypeError: 'int' object is not iterable的错误。

修正后的代码

只需要把最内层循环的变量名改成和MT不冲突的名字,比如mtbr_val就可以了:

QPA=[4,5,6,7,8,9]
MT=[2,3,4,5,6,7]
WH=[225,226,230,225,220,222]
Prd=[24,24,24,24,24,24]
MTBR=[7.5,8,9,7,5,6]
mean_value=[]
for q in QPA:
    for m in MT:
        for w in WH:
            for mtbr_val in MTBR:  # 这里把变量名改成mtbr_val,避免覆盖MT列表
                mean_v = q * m * w * 24 / (mtbr_val * 1000)
                mean_value.append(mean_v)
print(mean_value)

额外小优化

另外,你一开始定义的mean_v=[]其实没用到,可以直接删掉,代码会更简洁~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:14:01