class Cell: def __init__(self, x, y, isWall=False, isStart=False, isExit=False): self.__x = x self.__y = y self.isWall = isWall self.isStart = isStart self.isExit = isExit pass @property def isPassable(self) -> bool: """возвращает `True` для прохода, если клетка не стена""" return not self.isWall @property def x(self) -> int: """Возвращает координату клетки по оси X""" return self.__x @property def y(self) -> int: """Возвращает координату клетки по оси Y""" return self.__y def getXY(self) -> tuple[int, int]: """Возвращает кортеж координат в формате `(x, y)`""" return self.__x, self.__y def toStr(self): if self.isWall: return '#' elif self.isStart: return 'S' elif self.isExit: return 'E' else: return ' '