class TicTacToe: # Konstruktur, wird bei der Kreation der Instanz aufgerufen def __init__(self): # leeres Feld self.feld = [[0,0,0] for i in range(3)] def clear(self): for x in range(3): for y in range(3): self.feld[x][y] = 0 # Standard-Methode zur Umwandlung in einen String def __str__(self): symbols = [" ", "O", "X"] res = "" for y in range(3): for x in range(3): res += " "+symbols[self.feld[x][y]]+" " if (x<2): res += "|" res += "\n" if (y<2): res += "---+---+---\n" return res # Setzt ein Feld, wenn es leer ist def set(self,x,y,what): if (self.feld[x][y]==0): self.feld[x][y] = what else: raise RuntimeError("Feld ist schon belegt!") def isEmpty(self,x,y): return self.feld[x][y]==0 # Initialierung einer Instanz t = TicTacToe() # Ruft automatisch __str__ auf, zur Umwandlung in einen String print(t) t.set(1,1,1); print(t) t.set(0,0,2); print(t) t.set(0,0,1); # Generiert einen Fehler.