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

从FakerAPI获取JSON后,遍历整数列表遇TypeError问题咨询

问题分析:TypeError: argument of type 'int' is not iterable 报错原因

核心原因

你认定categories是整数列表,但实际它是单个整数。

in运算符的作用是检查元素是否存在于可迭代对象(比如列表、元组、字符串等)中。当你把in用在整数上时,Python会尝试迭代这个整数——但整数属于不可迭代类型,因此直接抛出TypeError。

而categories == 3能正常运行,是因为此时categories是单个整数,直接做相等比较是合法的整数运算,不会触发迭代操作。

可能的场景

  1. API返回数据结构不一致:你调用的API可能对部分产品返回的categories是单个整数,而非列表。比如有的产品categories字段是[1,3,5],有的则直接是3,导致循环到这类产品时categories变成了int类型。
  2. 数据提取错误:你在提取categories时,误取了列表中的单个元素,而非整个列表。比如本来应该取product['categories'],却写成了product['categories'][0],导致categories变成了单个整数。

验证方法

在报错代码前添加打印语句,确认categories的类型和值:

print(type(categories), categories)

运行后就能直观看到它到底是列表还是单个整数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 12:55:37