在if语句中引用numpy数组位置

时间:2015-06-02 19:46:40

标签: python arrays matlab numpy indexing

我有以下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对象不可调用"错误。为什么会出现这种情况,我将如何以适当的python方式编写它以成功执行?

1 个答案:

答案 0 :(得分:2)

看起来index是某种类型的数组,但当您执行index(y)index(x)时,Python会认为您正在尝试调用函数index()分别使用xy作为参数。

如果您尝试简单地访问元素,请使用index[x]index[y]