在 if 语句中引用 numpy 数组位置
Referencing numpy array locations within if statements
我有 Python 的以下部分:
for j in range(0,T):
for x in xrange(len(index)):
for y in xrange(x+1,len(index)):
if index(y) == index(x):
continue
为此,我一直试图从 MATLAB 等价物成功翻译。在matlab中,这个操作很简单如下:
for iter = 1:T
for i = 1:length(index)
for j = i+1:length(index)
if index(j) == index(i)
continue;
end
但是,当我尝试执行我的代码时,我收到 "numpy.ndarray object is not callable" 错误。为什么会出现这种情况,我将如何以正确的 python 方式编写它以成功执行?
看起来 index
是某种数组,但是当您执行 index(y)
和 index(x)
时,Python 认为您正在尝试调用函数 index()
分别使用x
和y
作为参数。
如果您只是想访问元素,请使用 index[x]
和 index[y]
。
我有 Python 的以下部分:
for j in range(0,T):
for x in xrange(len(index)):
for y in xrange(x+1,len(index)):
if index(y) == index(x):
continue
为此,我一直试图从 MATLAB 等价物成功翻译。在matlab中,这个操作很简单如下:
for iter = 1:T
for i = 1:length(index)
for j = i+1:length(index)
if index(j) == index(i)
continue;
end
但是,当我尝试执行我的代码时,我收到 "numpy.ndarray object is not callable" 错误。为什么会出现这种情况,我将如何以正确的 python 方式编写它以成功执行?
看起来 index
是某种数组,但是当您执行 index(y)
和 index(x)
时,Python 认为您正在尝试调用函数 index()
分别使用x
和y
作为参数。
如果您只是想访问元素,请使用 index[x]
和 index[y]
。