数独解算器,使用约束编程解决数独难题
kudosudoku的Python项目详细描述
一个数独解算器,使用约束编程解决难题
安装
通过PIP安装:
pip install kudosudoku
通过克隆安装:
git clone https://github.com/Varshneyabhushan/kudoSudoku.git
cd kudoSudoku
python setup.py install
用法
- 从模块导入类sudoku。
- 将要解决的谜题作为列表列表传递
- sudoku有一个名为solve()的方法,该方法返回已解的谜题
- 输出将是具有以下键的对象
- 完成:“描述完成与否的状态”
- 迭代:“重新访问拼图的次数”
- 猜测:“必须猜测的位置数”
- 时间:“结束时间”
- 解:“最终答案(将是整数列表)”
示例
解决这个数独问题
输入必须是:
[[0,2,4,0],[1,0,0,3],[4,0,0,2],[0,1,3,0]]
由于python语言区分大小写,因此必须导入kudosudoku,而不是kudosudoku。
fromkudoSudokuimportsudokupuzzle=[[0,2,4,0],[1,0,0,3],[4,0,0,2],[0,1,3,0]]table=sudoku(puzzle)result=table.solve()print(result)
输出:
{'done':True,'iterations':2,'guesses':0,'timeTaken':0.0013199988754573474,'solution':[[3,2,4,1],[1,4,2,3],[4,3,1,2],[2,1,3,4]]}
2X2数独只是为了演示。它适用于任何NXN数独游戏