Untitled
unknown
plain_text
a year ago
1.6 kB
5
Indexable
def print_board(board): for row in board: print(" | ".join(row)) print("-" * 5) def check_winner(board, player): win_conditions = [ [board[0][0], board[0][1], board[0][2]], [board[1][0], board[1][1], board[1][2]], [board[2][0], board[2][1], board[2][2]], [board[0][0], board[1][0], board[2][0]], [board[0][1], board[1][1], board[2][1]], [board[0][2], board[1][2], board[2][2]], [board[0][0], board[1][1], board[2][2]], [board[0][2], board[1][1], board[2][0]], ] if [player, player, player] in win_conditions: return True return False def tic_tac_toe(): board = [[" " for _ in range(3)] for _ in range(3)] current_player = "X" moves = 0 while moves < 9: print_board(board) try: row, col = map(int, input(f"Player {current_player}, enter row and column to place your {current_player}: ").split()) if board[row][col] == " ": board[row][col] = current_player if check_winner(board, current_player): print_board(board) print(f"Player {current_player} wins!") return current_player = "O" if current_player == "X" else "X" moves += 1 else: print("This spot is already taken.") except (IndexError, ValueError): print("Please enter row and column as two numbers between 0 and 2.") print_board(board) print("It's a tie!") if __name__ == "__main__": tic_tac_toe()
Editor is loading...
Leave a Comment