Wie man ein Tic Tac Toe Spiel macht in Python mit Codebeispiel

Tic Tac Toe Spiel in Python ist ein interessantes Projekt, das Sie ausprobieren kรถnnen. Es ist ein cooles und unterhaltsames Projekt zur Lรถsung einer Herausforderung und kann Ihnen helfen, grundlegende Konzepte zu meistern in Python. Das Erstellen eines lustigen Tic-Tac-Toe-Spiels hilft Ihnen, Ihre Fรคhigkeiten zu verbessern.

Sie kรถnnen eine gute Python Editor wie Pycharm oder die Befehlszeilenschnittstelle.

Wie spielt man das Tic Toc-Spiel?

Das Tic-Tac-Toe-Spiel ist ein einfaches Spiel fรผr zwei Spieler, das jeder spielen kann, ohne ein Spielbrett zu benรถtigen. Dabei markieren zwei Spieler verschiedene Felder, bis das Spiel endet und ein Sieg oder ein Unentschieden erzielt wird.

Hier erfahren Sie, wie Sie das Tic-Tac-Toe-Spiel spielen.

Schritt 1) Das Tic-Tac-Toe-Spiel beginnt mit leeren Feldern in einem quadratischen Raster. Das ist das Tic-Tac-Toe-Board.

Schritt 2) Beide Spieler wรคhlen aus zwei Symbolen, normalerweise X oder Os. Sie kรถnnen jedes andere einzigartige Symbol im Spiel verwenden.

Schritt 3) Der aktuelle Spieler markiert abwechselnd, indem er die Zellen des Tic-Tac-Toe-Bretts ausfรผllt, bis ein Spieler eine Gewinnkombination ausfรผllt. Das ist eine ganze Zeile, Spalte oder Diagonale mit demselben Vorzeichen.

Schritt 4) Ein Unentschieden ist auch mรถglich, wenn alle Zellen voll sind und kein Gewinner erkennbar ist

Voraussetzungen:

Aufbau der Tic Tac Toe Python Projekt erfordert ein grundlegendes Verstรคndnis von Python Programmiersprache. Dazu gehรถrt das Verstรคndnis von โ€žforโ€œ-Schleifen und Iterationen und was eine if-Anweisung in Python.

Sie mรผssen auch haben Python und einem Python Texteditor auf Ihrem Computer installiert, um das Tic-Tac-Toe zu vervollstรคndigen Python Projekt. Da es sich um ein Tic Tac Toe-Spiel fรผr Anfรคnger handelt, Pythonbrauchen Sie keine Python Bibliothek.

Mรถglicherweise benรถtigen Sie einige Debugging-Kenntnisse, um Lรถsungen fรผr Fehler in Ihrem Code zu finden, und Sie sollten auรŸerdem รผber ausreichende Kenntnisse der Spielkomponenten verfรผgen.

Tic Tac Toe Python Algorithmus

Befolgen Sie diese Schritte, um ein Tic Tac Toe-Spiel zu erstellen in Python Programmiersprache:

Schritt 1) Erstellen Sie das Brett, um das Tic-Tac-Toe-Spiel zu beginnen.

Schritt 2) Bitten Sie den Benutzer, รผber die Abmessungen des Spielbretts zu entscheiden.

Schritt 3) Wรคhle zufรคllig den Startspieler.

Schritt 4) Das Tic-Tac-Toe-Spiel beginnt.

Schritt 5) Die Spieler spielen, indem sie eine leere Stelle auf dem Spielbrett auswรคhlen.

Schritt 6) Fรผllen Sie die leere ausgewรคhlte Stelle mit dem Zeichen des Spielers.

Schritt 7) Bestimmen Sie mithilfe der Spiellogik, ob ein Spieler das Spiel gewinnt oder ein Unentschieden erzielt.

Schritt 8) Zeigen Sie das Spielbrett nach jedem Spielzug an, wenn kein Spieler gewinnt oder ein Gleichstand mit dem zweiten Spieler besteht.

Schritt 9) Zeigen Sie eine Unentschieden- bzw. Siegernachricht an.

Schritt 10) Beenden Sie das Tic-Tac-Toe-Spiel mit Optionen zum Starten eines neuen Spiels.

Vollstรคndiger Python Code fรผr Tic Tac Toe

# Guru99
# Code developed by Guru99.com
# Guru99 tic-tac-toe game
#Get input
def getInput(prompt, cast=None, condition=None, errorMessage=None):
  while True:
      try:
          val = cast(input(prompt))
          assert condition is None or condition(val)
          return val
      except:
          print(errorMessage or "Invalid input.")
# Print the game board
def printBoard(board):
  print()
  for row in board:
      print(*row)
  print()
# Check if player won using the winning combinations
def checkWin(board):
  # Check rows
  for row in range(len(board)):
      for col in range(len(board)-1):
          if board[row][col] == "_" or board[row][col+1] == "_" or board[row][col] != board[row][col+1]:
              break
      else:
          return True
  # Check column numbers
  for col in range(len(board)):
      for row in range(len(board)-1):
          if board[row][col] == "_" or board[row+1][col] == "_" or board[row][col] != board[row+1][col]:
              break
      else:
          return True
  # Check left diagonal
  for cell in range(len(board)-1):
      if board[cell][cell] == "_" or board[cell+1][cell+1] == "_" or board[cell][cell] != board[cell+1][cell+1]:
          break
  else:
      return True
  # Check right diagonal
  for cell in range(len(board)-1):
      emptyCell = board[cell][len(board)-cell-1] == "_" or board[cell+1][len(board)-cell-2] == "_"
      different = board[cell][len(board)-cell-1] != board[cell+1][len(board)-cell-2]
      if emptyCell or different:
          break
  else:
      return True
  # No win
  return False
# Play tic tac toe game
def play():
  # Introduction
  print("------------\nN-DIMENSIONAL TIC TAC TOE game by guru 99.com \n------------")
  # Set up variables
  N = getInput(prompt="Guru99 says>>> Enter N, the dimensions of the board: ",
               cast=int,
               condition=lambda x: x >= 3,
               errorMessage="Invalid input. Please enter an integer greater than or equal to 3 as explained on guru99.com")
  board = [['_'] * N for _ in range(N)]
  used = 0
  turn = 0
  # Play guru99 tic tac toe game in Python using while infinite loop
  while True:
      # Print guru99 tic tac toe game board
      printBoard(board)
      # Get user pick
      pick = getInput(prompt=f"Player {turn+1} - Pick location (row, col): ",
                      cast=lambda line: tuple(map(int, line.split(" "))),
                      condition=lambda pair: min(pair) >= 0 and max(pair) < N and board[pair[0]][pair[1]] == "_",
                      errorMessage="Invalid input. Please enter a valid, unoccupied location as an integer pair.")
      # Populate location
      board[pick[0]][pick[1]] = "X" if turn == 0 else "O"
      used += 1
      # Check for win
      #Guru99 tutorial
      if checkWin(board):
          printBoard(board)
          print(f"Game over, Player {turn+1} wins.")
          break
      # Check for tie
      elif used == N*N:
          printBoard(board)
          print("Game over. Players have tied the match.")
          print("Guru99.com tic tac toe game ")
          break
      # If no win yet, update next user
      turn = (turn+1)%2
  # Check for rematch
  playAgain = getInput(prompt="Play Guru99 tic tac toe_Game again? (y/n): ",
                       cast=str,
                       condition=lambda ans: ans.strip("\n").lower() in {"y", "n"},
                       errorMessage="Invalid input. Please enter 'y' or 'n'.")
  if playAgain == 'n':
      # End the game
      print("\nGuru99 TicTacToe game ended.")
      return
  else:
      # Rematch
      play()
# Main
if __name__ == '__main__':
  play()

Tic Tac Toe Python Codeausgabe

Sobald Sie den obigen Quellcode ausfรผhren, sehen Sie unten die erwartete Ausgabe fรผr ein 3 x 3 groรŸes Tic-Tac-Toe-Board:

------------
N-DIMENSIONAL TIC TAC TOE game by guru 99.com
------------
Guru99 says>>> Enter N, the dimensions of the board: 3

_ _ _

_ _ _

_ _ _

Player 1 - Pick location (row, col): 1 1

_ _ _

_ X _

_ _ _

Player 2 - Pick location (row, col): 0 1

_ O _

_ X _

_ _ _

Player 1 - Pick location (row, col): 1 2

_ O _

_ X X

_ _ _

Player 2 - Pick location (row, col): 0 2

_ O O

_ X X

_ _ _

Player 1 - Pick location (row, col): 1 0

_ O O

X X X

_ _ _

Game over, Player 1 wins.
Play Guru99 tic tac toe_Game again? (y/n):

Vollstรคndige Codeaufschlรผsselung

Bessere Tic Tac Toe im Python ist einfach. Lassen Sie uns die verschiedenen Funktionen Stรผck fรผr Stรผck zerlegen, um zu verstehen, was in jeder Zeile passiert:

Bedrucken der Platine

Das Tic Tac Toe-Brett ist das Hauptdisplay des Spiels. Python Das Anzeigefenster dient zur Anzeige des Spielbretts.

Hier sind die Schritte, die Ihnen helfen, ein Brett fรผr Tic Tac Toe zu erstellen in Python:

Python Code fรผr Tic Tac Toe

def getInput(prompt, cast=None, condition=None, errorMessage=None):
   while True:
       try:
           val = cast(input(prompt))
           assert condition is None or condition(val)
           return val
       except:
           print(errorMessage or "Invalid input.")
# Print the board
def printBoard(board):
   print()
   for row in board:
       print(*row)
   print()
N = getInput(prompt="Guru99 says>>> Enter N, the dimensions of the board: ",
            cast=int,
            condition=lambda x: x >= 3,
            errorMessage="Invalid input. Please enter an integer greater than or equal to 3 as explained on guru99.com")
board = [['_'] * N for _ in range(N)]
used = 0
turn = 0
printBoard(board)

Codeausgabe:

------------
N-DIMENSIONAL TIC TAC TOE game by guru 99.com
------------
Guru99 says>>> Enter N, the dimensions of the board: 3

_ _ _

_ _ _

_ _ _

Tic Tac Toe-Spiel โ€“ Gewinnkombination

Um zu รผberprรผfen, ob ein Spieler gewonnen hat, mรผssen wir die Gewinnkombinationen in den Zeilen, Spalten und Diagonalen รผberprรผfen. Wenn es einen Gewinner gibt, mรผssen wir eine Gewinnerbotschaft zeigen.

Reihen

  • Fรผr die Zeile nimmt die Funktion jedes aufeinanderfolgende Spaltenpaar und prรผft, ob eine Gewinnkombination vorliegt.
  • Der erste Spieler, der die Reihen fรผllt, gewinnt. Der zweite Spieler verliert also.
  • Wenn ein Paar aufeinanderfolgender Spalten gleich ist, ist es offensichtlich, dass alle Elemente in dieser Zeile gleich sind.
  • Wenn zwei davon unterschiedlich sind oder die Zeile eine leere Zelle enthรคlt, gibt es immer noch keinen Gewinner.
  • AnschlieรŸend implementieren wir Verlustbedingungen und fรผgen eine Pause hinzu. Wenn eine dieser Verlustbedingungen zutrifft, hatten wir in der รผberprรผften Reihe keinen Gewinner.
  • Die else-Anweisung gibt eine echte Rรผckgabe zurรผck, um zu zeigen, dass es einen Gewinner gibt.
  • Der Break bricht aus dieser Schleife aus, um mit der nรคchsten Zeile fortzufahren.

Spalten

Fรผr die Spalten wiederholen wir die gleiche Funktion wie in den Zeilen. Wir รผberprรผfen, ob ein Spieler gewonnen hat, nachdem jeder Spieler seinen Platz ausgewรคhlt hat.

Die diagonale Reihe gewinnt

Fรผr die linke Diagonale wird die Aufgabe einfacher. Wir werden immer die Zellen in den Diagonalen vergleichen. Falls es jedoch keinen Gewinner gibt, kรถnnen wir mit der nรคchsten Anweisung fortfahren.

Spiellogik spielen

Dies ist die Hauptspielfunktion. Hierzu kรถnnen wir Variablen verwenden, die Informationen speichern.

  • Die erste Variable ist die in โ€žNโ€œ gespeicherte PlatinengrรถรŸe. Das Spiel erhรคlt die SpielbrettgrรถรŸe, nachdem der Benutzer aufgefordert wurde, eine Zahl einzugeben.
  • Wenn Sie also den Wert eingeben, wird er verarbeitet.
  • Wir erstellen auรŸerdem eine Fehlermeldung, um den Spielern anzuzeigen, wenn eine ungรผltige Nummer eingegeben wird.
  • Wir kรถnnen dann zwei Variablen erstellen, die ein โ€žXโ€œ oder ein โ€žOโ€œ ausfรผllen, wenn eine Zelle gefรผllt ist.
  • Zeigen Sie den Spielern dann den Spielplan. Holen Sie sich danach die Eingaben des Spielers ein.
  • Die Logik markiert dann die ausgewรคhlte Zelle als gefรผllt und prรผft, ob ein Sieg oder ein Unentschieden vorliegt.
  • Wenn es keinen Gewinner gibt, fordert das Spiel den nรคchsten Spieler zum Spielen auf. Bei einem Sieg oder Unentschieden kann das Spiel die Nutzer fragen, ob sie ein neues Spiel wollen.

Fazit

  • Tic Tac Toe ist ein unterhaltsames Spiel fรผr zwei Spieler, bei dem ein einzigartiges Symbol in einer leeren Spielfeldzelle platziert wird.
  • Erstellen eines Tic Tac Toe-Spiels in Python erfordert ein grundlegendes Verstรคndnis von Python, ein Texteditor und Python installiert.
  • Der Algorithmus hilft Ihnen, den Code systematisch in jeder Sprache zu schreiben.
  • Um das Spiel zu erstellen, zeichnen Sie zunรคchst das Spielbrett und schreiben Sie Code, um die Gewinn- und Verlustanordnungen festzulegen
  • Sie kรถnnen den Tic-Tac-Toe-Code testen in Python indem Sie es zuerst spielen.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: