Learn Classes and Objects by Building a Sudoku Solver - Step 25

Tell us what’s happening:

In the step 25 of the sudoku solver project in python it asks to “Replace pass with an expression that checks if the number numm is not already present in that row”. The hint says to replace pass with the expression num not in self.board[row]. The problem is that the expression is already present, and i cant really figure out what to replace pass with.

Your code so far

class Board:
    def __init__(self, board):
        self.board = board

    def find_empty_cell(self):
        for row, contents in enumerate(self.board):
            try:
                col = contents.index(0)
                return row, col
            except ValueError:
                pass
        return None

# User Editable Region

    def valid_in_row(self, row, num):
        if num not in self.board[row]:
            pass

# User Editable Region

puzzle = [
  [0, 0, 2, 0, 0, 8, 0, 0, 0],
  [0, 0, 0, 0, 0, 3, 7, 6, 2],
  [4, 3, 0, 0, 0, 0, 8, 0, 0],
  [0, 5, 0, 0, 3, 0, 0, 9, 0],
  [0, 4, 0, 0, 0, 0, 0, 2, 6],
  [0, 0, 0, 4, 6, 7, 0, 0, 0],
  [0, 8, 6, 7, 0, 4, 0, 0, 0],
  [0, 0, 0, 5, 1, 9, 0, 0, 8],
  [1, 7, 0, 0, 0, 6, 0, 0, 5]
]

gameboard = Board(puzzle)

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36

Challenge Information:

Learn Classes and Objects by Building a Sudoku Solver - Step 25

1 Like

Hello,
you should literally replace pass with num not in self.board[row] so remove the if, : and pass keyword