This game consists of two files.
working.py -> is just a basic version of original game in which you can hardcode the 9*9 matrix.
solver.py -> This file consists the code which solves the sudoku using backtracking. You need to have these files in the same directory in order to work them properly.
gui.py -> This is the final piece of the game which is nothing but GUI. I used PyGames to give it a nice look. Also, I programmed it to randomly generate the sudoku everytime you run it.