Python 类型错误:';numpy.float64';对象不可调用,为什么?

Python 类型错误:';numpy.float64';对象不可调用,为什么?,python,numpy,floating-point,int,Python,Numpy,Floating Point,Int,为什么我会犯这个错误?错误似乎出现在调用“for i in range”的行中,但我不明白为什么这会是一个错误……我已经退出内核,以防i中隐藏了什么 我的代码如下: import os, sys import numpy from matplotlib import pylab, pyplot, cm from math import pi from skimage import io image = numpy.ones([44,44],dtype = float) imrange = l

为什么我会犯这个错误?错误似乎出现在调用“for i in range”的行中,但我不明白为什么这会是一个错误……我已经退出内核,以防i中隐藏了什么

我的代码如下:

import os, sys
import numpy
from matplotlib import pylab, pyplot, cm
from math import pi
from skimage import io


image = numpy.ones([44,44],dtype = float)
imrange = len(image)

#Initialize empty residue map
residue_map = numpy.empty([imrange-2,imrange-2],dtype = float)

#Calculate the residues for each point following formula (1) in He paper
for i in range (1,int(imrange-1)):
    for j in range (1,int(imrange-1)):
        value = (image[i+1][j] - image[i][j]) + (image[i+1][j+1] - 
image[i+1][j]) + (image[i][j+1] - image[i+1][j+1]) + (image[i][j] - image[i][j+1])
        if value/2./pi > 0:
            residue_map[i-1][j-1] = 1.
        elif value/2./pi == 0:
            residue_map[i-1][j-1] = 0.
        else:
            residue_map[i-1][j-1] = -1.

作为python初学者的另一个例子……上面的代码工作时,我定义了一个range=numpy.max(image)-numpy.min(image),然后在循环中再次使用range,因此出现了错误

请提供。您可以发布完整的错误消息吗?TypeError:“numpy.float64”对象在“范围内的i(1,int(imrange-1))的行”中不可调用:““那么,在删除该行以使用范围后,代码现在是否工作了?永远不要使用保留关键字作为变量名。”。还应包括有问题的这一行,以便人们了解问题的起因。。