#!/usr/bin/python3 # -*- coding: utf-8 -*- """ :mod: module :author: `Éric W` :date: 2016, october """ def usage(): print('Usage: {:s} '.format(sys.argv[0])) print('where') print('\t is a text file whose lines are valid sudoku grids descriptions') exit(1) if __name__ == '__main__': import sys import sudoku_grid, sudoku_solver if len(sys.argv) != 2: print('Argument missing.') usage() else: filename = sys.argv[1] try: with open(filename, 'r') as input: lines = input.readlines() except FileNotFoundError: print('No such file {:s}'.format(filename)) usage() with open(filename+'.sol', 'w') as output: for line in lines: line = line.rstrip('\n') output.write(line + ':') strgrid = line.split(':')[-1] grid = sudoku_grid.SudokuGrid(strgrid) sols = sudoku_solver.solve(grid) nb_sols = len(sols) if nb_sols == 1: output.write('y:') else: output.write('n:') sols = ':'.join(str(sol) for sol in sols) output.write(sols + '\n') exit(0)