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

Tell us what’s happening:

def valid_in_row(self, row, num):
pass
Replace pass with an expression that checks if the number num is not already present in that row.

I tried solving this with the method below but it didnt work, I need help please.
def valid_in_row(self, row, num):
if num not in self.board[row]:
return True

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]:
           return True
        else:
           return False
        

# 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/126.0.0.0 Safari/537.36

Challenge Information:

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

Tests in this step expects a bit literal following of the instructions, parts that will make function fully functional will be added later.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.