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

Jupyter Notebooks中使用for循环遍历range(3)报TypeError错误求助

解决TypeError: 'numpy.int32' object is not callable问题

问题原因

你大概率是在Jupyter Notebook的某个单元格里,不小心把内置函数range覆盖成了numpy的int32类型变量。比如之前执行过类似这样的代码:

import numpy as np
range = np.int32(3)  # 这里把range变成了numpy整数对象

之后再调用range(3)时,就会试图调用这个numpy整数,自然抛出"not callable"的错误。其他IDE正常是因为没有在环境中覆盖过range这个名字。

修复步骤

  • 验证覆盖情况:在新单元格里执行type(range),如果输出是<class 'numpy.int32'>,就确认是这个问题。
  • 恢复内置range:执行del range,删除被覆盖的变量,此时range会恢复为Python内置的函数。
  • 避免重复踩坑:以后不要用Python内置函数名(比如range、list、dict等)作为自定义变量名,尤其是在使用numpy、pandas这类库时。

示例演示

错误代码场景:

import numpy as np
range = np.int32(5)  # 错误地覆盖了range
for i in range(3):  # 这里会报错TypeError
    print(i)

修复后:

del range  # 恢复内置range
for i in range(3):
    print(i)

执行后会正常输出0、1、2。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 00:45:38