Python for和if循环计数

时间:2016-11-18 18:10:15

标签: python graphlab

我在这里做错了什么? 我试图保持行/数组的列/字段中的值小于行中所有其他值的计数。

所以我试图遍历每一行来检查特定列是否小于列的其余部分。

下面的代码总是会产生一个。所以我很困惑。我尝试的一切都会导致1。

def is_dog_correct(row, x, y, z, r):
    zero = 0
    for i in xrange(len(row)):
        if row[i-1][x] < row[i-1][y] and row[i-1][z] and row[i-1][r]:
            return Zero + 1
        else:
            return 0

此外,是否有更简单的方法可以做到这一点。我正在使用graphlab.SFrame

1 个答案:

答案 0 :(得分:0)

你需要继续计数并在循环完成后返回结果。

def is_dog_correct(row, x, y, z, r):
    count = 0
    for i in xrange(len(row)):
        if row[i-1][x] < row[i-1][y] and row[i-1][z] and row[i-1][r]:
            count = count + 1
        else:
            pass
    return count