У меня есть сетка в виде кортежа кортежей с целыми числами (1/0), номер строки и номер столбца для ячейки в виде целых чисел. И я должен найти, сколько соседних ячеек имеет соседей как целое число.
Это задание с www.checkio.org, интересного сайта по изучению python.
Вот мой код:
def count_neighbours(grid, row, col):
grid = ()
count = 0
for pos in ((row - 1, col), (row + 1, col), (row, col - 1), (row, col + 1), (row - 1, col - 1), (row - 1, col + 1), (row + 1, col - 1), (row + 1, col + 1)):
if pos == 1:
count += 1
return count
Система мне отвечает, что рядом с выбранной ячейкой нет соседей. Пожалуйста, объясните мне, что не так и спасибо за внимание!
grid
пустым кортежем и 2) ваш код вообще не ссылается на переменнуюgrid
, вы просто добавляете 1 кcount
, еслиpos
равно 1.pos
никогда не будет равно 1, потому что вы устанавливаете его в один из наборов кортежей. Следовательно, ваша функция всегда будет возвращать0
, покаrow
иcol
являются числовыми (и в противном случае вызовет исключение). - person Martijn Pieters   schedule 09.11.2014