Also habe ich eine Python-Funktion geschrieben, die die Eingabe vom Benutzer im Format [column][row]
-> zB prüft. "23" für Spalte 2, Zeile 3. Ich bin in der Lage, die Größe des Boards zu ändern, aber ich bin nicht sicher, was der beste Weg, um einen Check zu implementieren wäre, um sicherzustellen, dass das Programm nicht unter diesen bricht Eingaben, sondern fordert den Benutzer lediglich auf, die Koordinaten erneut einzugeben:Überprüfung, ob eingegebene Koordinaten gültig sind
- Der Benutzer gibt eine Leerstelle ein (drückt Enter).
- Der Benutzer gibt Koordinaten außerhalb des Bereichs des Zeilen- oder Spaltenindex ein.
- Der Benutzer gibt einen Buchstaben oder ein anderes Zeichen als eine Zahl ein.
Das ist mein Python-Check für den Moment:
def checkIfMoveIsValid(Board, Move):
Row = Move % 10
Column = Move // 10
MoveIsValid = False
if Board[Row][Column] == " ":
MoveIsValid = True
return MoveIsValid
Ich habe versucht, diese Umsetzung ->
inp = input()
if inp and inp.isdigit():
Coordinates = int(inp)
else:
return 0
return Coordinates
aber nur, prüft, ob nicht koordinieren und alles abgesehen von den richtigen Eingang. Es wird jedoch nicht überprüft, ob die Koordinaten im Bereich liegen. Wenn also Koordinaten außerhalb des Bereichs eingegeben werden, stürzt das Programm ab und lautet: list index out of range
.