-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathticktactoabc.py
142 lines (101 loc) · 2.62 KB
/
ticktactoabc.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
import random
board = [' ']*10
game_state = True
announce = ''
def display_board():
print(board[7] + '|' + board[8] + '|' + board[9])
print('-----')
print(board[4] + '|' + board[5] + '|' + board[6])
print('-----')
print(board[1] + '|' + board[2] + '|' + board[3])
def player_input():
"""
OUPUT: = (Player 1 marker, Player 2 marker)
:return:
"""
marker = ''
while marker != 'X' and marker != '0':
marker = input('Player: Choose X or O: ').upper()
if marker == 'X':
return ('X', 'O')
else:
return ('O', 'X')
def place_marker(board, marker, possition):
board[possition] = marker
def win_check(board, mark):
return False
def choose_first():
flip = random.randint(0, 1)
if flip == 0:
return 'Player 1'
else:
return 'Player 2'
def space_check(board, position):
print(board[position] == ' ')
return board[position] == ' '
def full_board_check(board):
if '' in board[1:]:
return False
else:
return True
def ask_player(mark):
global board
req = 'Choose where to place your: ' + mark
while True:
try:
choice = int(input(req))
except ValueError:
print("Sorry, please input a number between 1-9")
continue
if board[choice] == ' ':
board[choice] = mark
break
else:
print("That sapce isn't empty")
continue
def reset_board():
global board, game_state
board = [' '] * 10
game_state = True
def player_choise(mark):
global board, game_state, announce
announce = ''
mark = str(mark)
ask_player(mark)
if win_check(board, mark):
display_board()
announce = mark + 'Wins'
game_state = False
display_board()
if full_board_check(board):
announce = 'Tie'
game_state = False
return game_state, announce
def play_game():
reset_board()
global announce
X='X'
O='O'
while True:
display_board()
game_state, announce = player_choise(X)
print(announce)
if game_state == False:
break
game_state, announce = player_choise(O)
print(announce)
if game_state == False:
break
rematch = input('Would like to play again? y/n')
if rematch == 'y':
play_game()
else:
print("Thanks for playing")
def replay():
choise = input("Play again? Enter Yes or No")
return choise == 'Yes'
def main():
print('Welcome to Tic Tac Toe')
play_game()
if __name__ == '__main__':
main()