TicTacToe
Verfasst: Mittwoch 15. Juni 2011, 14:05
Ich programmier erst seit ein paar Wochen mit Python und hatte mir jetzt ein TicTacToe programmiert(2-Spieler).
Nur beim überprüfen, ob jemand gewonnen hat bzw. ob unentschieden ist, sieht mein Code ein bisschen komisch aus.
Gibt es eine kürzere oder übersichtlichere Möglichkeit?
(ich hab nicht den kompletten Code gepostet ^^)
Nur beim überprüfen, ob jemand gewonnen hat bzw. ob unentschieden ist, sieht mein Code ein bisschen komisch aus.
Gibt es eine kürzere oder übersichtlichere Möglichkeit?

Code: Alles auswählen
def whowins(who):
if(who == "X"):
who = "Spieler1"
else:
who = "Spieler2"
return who
def finish():
unentschieden = (feld[0]+feld[1]+feld[2]+feld[3]+feld[4]+feld[5]+feld[6]+feld[7]+feld[8]).replace("-", "")
if(feld[0].replace("-", "") == feld[1] and feld[0] == feld[2]):
winner = whowins(feld[0])
print(winner + " gewinnt.")
return True
elif(feld[0].replace("-", "") == feld[3] and feld[0] == feld[6]):
winner = whowins(feld[0])
print(winner + " gewinnt.")
return True
elif(feld[0].replace("-", "") == feld[4] and feld[0] == feld[8]):
winner = whowins(feld[0])
print(winner + " gewinnt.")
return True
elif(feld[1].replace("-", "") == feld[4] and feld[1] == feld[7]):
winner = whowins(feld[1])
print(winner + " gewinnt.")
return True
elif(feld[3].replace("-", "") == feld[4] and feld[3] == feld[5]):
winner = whowins(feld[3])
print(winner + " gewinnt.")
return True
elif(feld[2].replace("-", "") == feld[4] and feld[2] == feld[6]):
winner = whowins(feld[2])
print(winner + " gewinnt.")
return True
elif(feld[2].replace("-", "") == feld[5] and feld[2] == feld[8]):
winner = whowins(feld[2])
print(winner + " gewinnt.")
return True
elif(feld[6].replace("-", "") == feld[7] and feld[6] == feld[8]):
winner = whowins(feld[6])
print(winner + " gewinnt.")
return True
elif(len(unentschieden) == 9):
print("Unentschieden.")
return True