У меня есть сетка как кортеж кортежей с целыми числами (1/0), номер строки и номер столбца для ячейки как целые числа. И я должен найти, сколько соседних ячеек соседей является целым числом.Область Мура в python
Это задача с сайта www.checkio.org, интересного сайта изучения питона.
Вот мой код:
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
система отвечает мне, что нет соседей рядом с выбранной ячейкой. Пожалуйста, объясните мне, что случилось, и спасибо за внимание!
Я вижу две очевидных ошибок: 1) вы заменили 'grid' с пустым кортежем и 2) ваш код не ссылаться на' grid', вы просто добавляете 1 к 'count', если' pos' равно 1. 'pos' никогда не будет равным 1, потому что вы устанавливаете его в одну из серии * кортежей *. Ergo, ваша функция всегда будет ** возвращать '0', если' row' и 'col' являются числовыми (и в противном случае создает исключение). –