Package to easily generate and/or solve any 9x9 sudoku grid
Project description
Sudoku Manager
Description
This package is made for easy sudoku generation and solving. Using the main Sudoku class, you'll easily be able to generate random sudokus (with a difficulty setting), load existing sudokus from different formats, and solve those sudokus. The Sudoku class has attributes dedicated to performance and backtracing, allowing you to study its behavior.
What it contains
The module contains 3 classes:
- Sudoku: this is the main class you'll be using. It represents a sudoku grid.
- Area: An area represents either a row, a column, or a square in a sudoku grid. It contains Cell instances, and is used to easily check "which values can be written"
- Cell: A single cell in a sudoku grid. There are 81 in a 9x9 sudoku, and each Cell is associated with 3 Area instances (1 row, 1 column, 1 square)
Note that :
- A Sudoku instance is made of 27 Area instances: 9 rows, 9 columns, and 9 squares
- A Sudoku instance is made of 81 Cell instances
- An Area instance is made of 9 Cell instances
- Each Cell instance is stored into 3 areas (1 row, 1 column, and 1 square)
How it works
- To install the module, use
pip install sudoku-manager
- To import the module, use
import sudoku_manager
- It is likely you will only use the Sudoku class. You can import it using
from sudoku_manager.sudoku import Sudoku
- To generate a sudoku: simply call the
Sudoku.generate_grid()
method with the correct settings. It will either output a JSON or return a grid. - To solve a sudoku: create a Sudoku instance (either from the normal constructor or a classmethod) and use the
.solve()
method to solve it.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sudoku_manager-1.0.6.tar.gz
(9.6 kB
view hashes)
Built Distribution
Close
Hashes for sudoku_manager-1.0.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 716faa27c61f7151ee5f63cc84181e315eb3aa3b81096e0e40d846bba027ca3e |
|
MD5 | 0cd074e9a2de66cd0c99ccf3653b6e5b |
|
BLAKE2b-256 | 5bc692b51580a147dcb91ff2b87c5fd44a1a5ade4e67d9b7d98c3cba71bb785e |