写一个井字棋代码
时间: 2024-02-21 13:58:25 浏览: 22
好的,以下是一个简单的井字棋代码示例(使用 Python 语言实现):
```python
# 初始化游戏棋盘
board = [' '] * 9
# 绘制游戏棋盘
def draw_board():
print('-------------')
print('| ' + board[0] + ' | ' + board[1] + ' | ' + board[2] + ' |')
print('-------------')
print('| ' + board[3] + ' | ' + board[4] + ' | ' + board[5] + ' |')
print('-------------')
print('| ' + board[6] + ' | ' + board[7] + ' | ' + board[8] + ' |')
print('-------------')
# 判断是否有玩家获胜
def check_win(player):
if (board[0] == player and board[1] == player and board[2] == player) or \
(board[3] == player and board[4] == player and board[5] == player) or \
(board[6] == player and board[7] == player and board[8] == player) or \
(board[0] == player and board[3] == player and board[6] == player) or \
(board[1] == player and board[4] == player and board[7] == player) or \
(board[2] == player and board[5] == player and board[8] == player) or \
(board[0] == player and board[4] == player and board[8] == player) or \
(board[2] == player and board[4] == player and board[6] == player):
return True
else:
return False
# 游戏主循环
def main():
draw_board()
while True:
# 玩家1下子
move1 = int(input('Player 1, please enter your move (1-9): '))
if board[move1 - 1] == ' ':
board[move1 - 1] = 'X'
draw_board()
if check_win('X'):
print('Player 1 wins!')
break
else:
print('Invalid move, try again.')
continue
# 判断是否平局
if ' ' not in board:
print('It is a tie!')
break
# 玩家2下子
move2 = int(input('Player 2, please enter your move (1-9): '))
if board[move2 - 1] == ' ':
board[move2 - 1] = 'O'
draw_board()
if check_win('O'):
print('Player 2 wins!')
break
else:
print('Invalid move, try again.')
continue
# 启动游戏
main()
```
玩家1使用 X 标记,玩家2使用 O 标记,输入数字1-9来选择下子的位置。运行以上代码即可开始游戏。