python编写4*4井字棋
时间: 2023-07-29 07:05:49 浏览: 38
下面是一个简单的 Python 代码,用于实现 4x4 的井字棋游戏。
```python
board = [['-', '-', '-', '-'],
['-', '-', '-', '-'],
['-', '-', '-', '-'],
['-', '-', '-', '-']]
def print_board():
for row in board:
print(row)
def check_win():
for i in range(4):
# 检查行
if board[i][0] == board[i][1] == board[i][2] == board[i][3] != '-':
return True
# 检查列
elif board[0][i] == board[1][i] == board[2][i] == board[3][i] != '-':
return True
# 检查对角线
if board[0][0] == board[1][1] == board[2][2] == board[3][3] != '-':
return True
elif board[0][3] == board[1][2] == board[2][1] == board[3][0] != '-':
return True
else:
return False
def make_move(player):
while True:
move = input(f"Player {player}, please enter your move (row,column): ")
row, col = move.split(',')
row, col = int(row) - 1, int(col) - 1
if row < 0 or row > 3 or col < 0 or col > 3:
print("Invalid move! Row and column must be between 1 and 4.")
elif board[row][col] != '-':
print("Invalid move! That spot is already taken.")
else:
board[row][col] = player
break
print_board()
player = 'X'
while True:
make_move(player)
print_board()
if check_win():
print(f"Player {player} wins!")
break
elif '-' not in [spot for row in board for spot in row]:
print("It's a tie!")
break
player = 'O' if player == 'X' else 'X'
```
运行后,玩家可以输入行和列来放置他们的标志(X 或 O),直到有一方获胜或平局。