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

咨询Python报错TypeError: Cannot unpack non-iterable int object的含义

报错含义及原因解析

报错的中文翻译

TypeError: cannot unpack non-iterable int object → 类型错误:无法解包不可迭代的整数对象

具体原因拆解

  • 你的函数sum_defi里,第一个return a+b执行后会立刻终止函数运行,后面的return a-b永远不会被执行。调用sum_defi(5,4)时,函数最终返回的是整数9。
  • a,b = 某个值这种写法,要求等号右边必须是可迭代对象(比如元组、列表这类能拆分成多个元素的结构),才能把对象里的元素依次赋值给a和b。
  • 但整数属于不可迭代类型,没办法拆成两个独立元素分配给a和b,所以Python抛出了这个类型错误。

修复思路(可选)

如果想同时返回两个计算结果,把函数返回语句改成返回元组即可:

def sum_defi(a,b):
    return a+b, a-b  # 返回元组,逗号分隔无需额外加括号
a,b = sum_defi(5,4)
print(a)  # 输出9
print(b)  # 输出1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 19:12:07