@LucjanPetarda: Nazewnictwo takie se i niepotrzebne komentarze, które można zastąpić funkcjami. Śmiesznie to wygląda "print_brd(board)". Gdybyś miał klasę "Board" to metoda "isValid" ma sens, natomiast u ciebie jest to funkcja i jej nazwa nic nie znaczy dla mnie.
@LucjanPetarda: nie rób tak, jak potrzebujesz indeksu, to używaj enumerate. Zresztą w jednym miejscu piszesz tak jakby board mógł zmienić rozmiar, a w drugim hardkodujesz range od 1 do 10. Zdecyduj się
Docstringi rób przy pomocy ''' a nie #.
Jak masz return w środku ifa, to nie potrzebujesz else.
Dodaj wczytywanie stanu początkowego z excela
@LucjanPetarda: nie rób tak, jak potrzebujesz indeksu, to używaj enumerate. Zresztą w jednym miejscu piszesz tak jakby board mógł zmienić rozmiar, a w drugim hardkodujesz range od 1 do 10. Zdecyduj się
Docstringi rób przy pomocy ''' a nie #.
Jak masz return w środku ifa, to nie potrzebujesz else.
+ To co koledzy wyżej napisali
find to koszmarna nazwa dla tej zmiennej, find to czasownik, a to nie jest funkcja, tylko pozycja pustej komórki. Nie lepiej nazwać to np. emptycell?
Dalej, zamiast używać indeksów typu pos[1], to sobie po prostu go rozpakuj
x, y = pos
Dalej, linia 63: jak masz ten find, to go użyj zamiast przekazywać tuple (row, col), oszczędzaj palce