I would like to give some feedback about ...

def count*neighbours(grid, row, col):
box*size = len(grid[0])
if all(box*size == len(elem) for elem in grid) and 3 <= len(grid) <= 10 and 0 <= row <= box*size and 0 <= col <= box*size:
sum = 0
xmin = max(0, col - 1)
xmax = min(box*size - 1, col + 1)
ymin = max(0, row - 1)
ymax = min(box_size - 1, row + 1)
print (xmin, xmax), (ymin, ymax)
for x in range(xmin, xmax + 1):
for y in range(ymin, ymax + 1):
if x != col or y != row:
print x,y,grid[y][x]
sum += grid[y][x]
return sum
else:
return -1

The minimum box size is 3 and maximum is 10. It must be a box meaning len(row) == len(col). So my solution does not get validated and I have to account for infinately large arrays and rectangles.

From: http://www.checkio.org/mission/count-neighbours/solve/

HTTP_USER_AGENT:

Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:34.0) Gecko/20100101 Firefox/34.0

Created at: March 18, 2015, 9:49 p.m.; Updated at: March 19, 2015, 5:31 a.m.