From 0fe796fe7d8eae52e9d99979f4d30f06bd3862ba Mon Sep 17 00:00:00 2001 From: lesves Date: Sun, 17 Nov 2019 09:03:04 +0100 Subject: [PATCH] opraveno --- projekty/tic_tac_toe/ondra.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/projekty/tic_tac_toe/ondra.py b/projekty/tic_tac_toe/ondra.py index a4f7c5b..360645c 100644 --- a/projekty/tic_tac_toe/ondra.py +++ b/projekty/tic_tac_toe/ondra.py @@ -1,6 +1,4 @@ # Zdar, tady Lukáš -# Možná jsem tu našel něco jako chybu, tak se na to podívej, je to v tom hlavním cyklu - # Taky je v tvém kódu přímo vidět nějaký ten vliv toho C# nebo tak něčeho, # protože pojmenováváš věci s velkým písmenem na začátku. Dále jsi také s pojmenováváním trošku nekonzistentní. # V Pythonu jsou zvyky trochu jiné, ale chyba to samozřejmě není. @@ -27,7 +25,7 @@ def tah(): Show() #zobarí hrací desku -def Show(): +def Show(): # Lukáš - bylo by lepší, kdyby Show bralo board jako argument print(board[0], board[1], board[2], sep="") print(board[3], board[4], board[5], sep="") print(board[6], board[7], board[8], sep="") @@ -49,6 +47,7 @@ def Input_pos(): return To_Index(tah) #změní políčko +# Lukáš - tady bereš tah jako argument, ale proč ne board? je to pak takový podivně globální def Move(tah): if Input_chack(tah): if player_2: @@ -59,11 +58,14 @@ def Move(tah): else: pass +# Lukáš - a v tvém komentáři je děsivá pravopisná chyba :^) +# Lukáš - i programátor musí umět pravopis, i když všichni už víme, že programovací jazyky dávají mnohem větší smysl +# Lukáš - (jedna kamarádka mi pořád opravuje chyby, takže už mi to teď taky dost vadí) #skontroluje platnost vstupu def Input_chack(index): if not board[index] == "[ ]": print("pole je již obsazené") - return False + return Falsetsko else: return True @@ -74,10 +76,9 @@ def To_Index(tah): # Lukáš - tohle by se dalo udělat za pomocí cyklů mnohem snadněji, příště to zkus nějak chytřeji # Lukáš - jakmile začneš psát kód, který se nějak podivně opakuje, tak zkus popřemýšlet, jak by to šlo lépe +# Lukáš - taky by bylo lepší, kdyby Chack bralo board jako argument, je to flexibilnější a znovu použitelné #skontroluje zde hráč nevyhrál -# Lukáš - a v tvém komentáři je děsivá pravopisná chyba :^) -# Lukáš - i programátor musí umět pravopis, i když všichni už víme, že programovací jazyky dávají mnohem větší smysl -# Lukáš - (jedna kamarádka mi pořád opravuje chyby, takže už mi to teď taky dost vadí) +# Lukáš - další děsivá pravopisná chyba def Chack(): if board[0] == board[1] and board[0] == board[2] and not board[0] == "[ ]": #123 if board[0] == "[X]": @@ -126,7 +127,8 @@ Show() while Hra: tah() if not Chack() == None: - # Lukáš - toto vypadá jako chyba, protože not z čehokoliv nikdy nemůže být None + # Lukáš - tohle je neskutečně matoucí, nechápu proč ti Chack vrací None nebo bool a ne True/False, to by bylo mnohem srozumitelnější + # Lukáš - ty dokonce ten možný True/False výsledek z Chack ani nevyužiješ # Lukáš - mimochodem, když porovnáváš == None, tak je vhodnější použít is None (porovnání identity objektu), protože None existuje pouze jenom jedno pro celý vesmír Hra = False if player_2: