I have come across this piece of code:

```
counts = 128 * [0]

# some other steps here that modify the variable counts...
# in the end we have something like counts=[12, 583, 0, etc. , etc., 384]

for i in range(len(counts)):
    if counts[i]:
        outfile.write("%-12s%d\n" % (display(i), counts[i]))

```

Regarding the `if` statement, I understand that it is introduced so that it skips the instruction when `counts[i]==0`. That's because `0` is equivalent to `False`. But on the other side, I thought that any other integer (apart from 1) was not equivalent to `True`. In fact, if I type `3 == True` on the shell, I get `False` as an answer. So, is there any particular reason why `if <some integer>` is equivalent to `if True`?