Add File checking

master
En Yi 2018-07-20 13:43:20 +08:00
parent b019aa2f28
commit f5a3757368
5 changed files with 28 additions and 45 deletions

View File

@ -1,3 +1,4 @@
import os
import numpy as np
from . import Sudoku_Generator as sdk_gen
@ -108,20 +109,25 @@ class SudokuSystem:
self.offending_cells[row][col] = bad_cells
def generate_test_board(self):
with open(test_dir, 'r') as f:
lines = f.readlines()
def generate_test_board(self, difficulty):
try:
with open(test_dir, 'r') as f:
lines = f.readlines()
values = []
for line in lines:
values.append([int(val) for val in line.strip('\n').split(',')])
values = []
for line in lines:
values.append([int(val) for val in line.strip('\n').split(',')])
self.number_grid[:] = values
self.cell_status[:] = FIXED
row, col = np.where(self.number_grid == 0)
self.number_grid[:] = values
self.cell_status[:] = FIXED
row, col = np.where(self.number_grid == 0)
for r, c in zip(row, col):
self.cell_status[r, c] = EMPTY
for r, c in zip(row, col):
self.cell_status[r, c] = EMPTY
except Exception as e:
print(e)
print('Something went wrong loading the test file. Generating a random board instead')
self.generate_random_board(difficulty)
def generate_random_board(self, difficulty):
self.clear_grid()

View File

@ -6,4 +6,4 @@
8,9,1,2,3,4,5,6,7
3,4,5,6,7,8,9,1,2
6,7,8,9,1,2,3,4,5
9,1,2,3,4,5,6,7,0
9,1,2,3,4,5,6,7,

View File

@ -1,29 +0,0 @@
A,01:00:0
B,02:00:0
C,03:00:0
D,04:00:0
E,05:00:0
---
AA,02:00:0
BB,04:00:0
CC,06:00:0
DD,08:00:0
EE,10:00:0
---
AAA,03:00:0
BBB,06:00:0
CCC,09:00:0
DDD,12:00:0
EEE,15:00:0
---
AAAA,04:00:0
BBBB,08:00:0
CCCC,12:00:0
DDDD,16:00:0
EEEE,20:00:0
---
AAAAA,05:00:0
BBBBB,10:00:0
CCCCC,15:00:0
DDDDD,20:00:0
EEEEE,25:00:0

View File

@ -1,18 +1,24 @@
import random
import sys
import os
from PyQt5.Qt import QApplication
from PyQt5.QtCore import (QAbstractAnimation, Qt, QPropertyAnimation, pyqtProperty, pyqtSignal, QTimer)
from PyQt5.QtWidgets import (QWidget, QLineEdit, QHBoxLayout, QGridLayout, QVBoxLayout, QPushButton, QLabel)
if not __name__ == "__main__":
sys.path.append("~/PycharmProjects/sudoku")
hs_file = "/home/eyt21/PycharmProjects/sudoku/general/highscore.txt"
current_dir = os.getcwd()
sys.path.append(current_dir)
hs_file = current_dir + "/general/highscore.txt"
else:
hs_file = "./sudoku/general/highscore.txt"
from general import highscore as hs
if not os.path.exists(hs_file):
print('Missing High Score file. Generating one. ')
hs.generate_highscore_file(hs_file)
BACKWARD = 1
FORWARD = -1

View File

@ -147,8 +147,8 @@ class SudokuGrid(BaseSudokuItem):
self.anim.start()
def generate_new_grid(self, difficulty):
self.sudoku_grid.generate_random_board(difficulty)
#self.sudoku_grid.generate_test_board()
#self.sudoku_grid.generate_random_board(difficulty)
self.sudoku_grid.generate_test_board(difficulty)
self.update()
def replace_cell_number(self, val):