Requirement
Tic-tac-toe is a two-player game that children often play to pass the time. The game is usually played using a 3-by-3 game board. Each player chooses a symbol to play with (usually an X or an O) and the goal is to be the first player to place 3 of their symbols in a straight line on the game board (either across a row on the board, down a column or along one of the two main diagonals).
In this request, you are to complete some functions that make up part of a larger program for playing tic-tac-toe. In the program, game boards are not restricted to being 3-by-3, but are instead N-by-N, where N is one of the integers from 1 through 9, inclusive. Our game boards will always be square. When you have completed your functions for this request, you will be able to play games of tic-tac-toe on your computer!
Tips
从测试集入手1
2
3
4'XXX-O-O--', 'X') > game_won(
True
'XOXOXOOXO', 'X') > game_won(
False
从main开始一路调试,到1
2
3def play_tictatoe():
...
hava_a_winner = game_won(game_board, player_symbol)
进入函数后,增加处理逻辑,核心代码如下1
2
3
4
5
6
7
8
9
10
11
12def game_won(game_board, symbol):
...
for col in range(1, board_size + 1):
extract = tictactoe_functions.extract_line(game_board, 'dowm', col)
if extract == winning_string:
return True
for row in range(1, board_size + 1):
extract = tictactoe_functions.extract_line(game_board, 'across', row)
if extract == winning_string:
return True
...
return False