line1 = (" 1 | 2 | 3 ")
line2 = ("----|----|----")
line3 = (" 4 | 5 | 6 ")
line4 = ("----|----|----")
line5 = (" 7 | 8 | 9 ")
lines = [line1, line2, line3, line4, line5]
answer1 = 0
answer2 = 0
answer3 = 0
answer4 = 0
answer5 = 0
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
def player_turn():
global line1
global line3
global line5
global answer1
global answer2
global answer3
global answer4
global answer5
count = 0
count += 1
playerinput = int(input())
if playerinput == 1:
line1 = line1.replace('1', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 2:
line1 = line1.replace('2', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 3:
line1 = line1.replace('3', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 4:
line3 = line3.replace('4', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 5:
line3 = line3.replace('5', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 6:
line3 = line3.replace('6', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 7:
line5 = line5.replace('7', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 8:
line5 = line5.replace('8', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
if playerinput == 9:
line5 = line5.replace('9', 'X')
lines = [line1, line2, line3, line4, line5]
if count == 1:
answer1 = playerinput
if count == 2:
answer2 = playerinput
if count == 3:
answer3 = playerinput
if count == 4:
answer4 = playerinput
if count == 5:
answer5 = playerinput
answers1 = [answer1, answer2, answer3, answer4, answer5]
for word in lines:
print(word)
def function():
win1 = [1, 2, 3]
win2 = [1,4,7]
win3 = [1,5,9]
win4 = [2,5,8]
win5 = [3,6,9]
win6 = [3,5,7]
win7 = [4,5,6]
win8 = [7,8,9]
win = [win1, win2, win3, win4, win5, win6, win7, win8]
win1common1 = set(answers1).intersection(win1)
win1common = len(win1common1)
win2common1 = set(answers1).intersection(win2)
win2common = len(win2common1)
win3common1 = set(answers1).intersection(win3)
win3common = len(win3common1)
win4common1 = set(answers1).intersection(win4)
win4common = len(win4common1)
win5common1 = set(answers1).intersection(win5)
win5common = len(win5common1)
win6common1 = set(answers1).intersection(win6)
win6common = len(win6common1)
win7common1 = set(answers1).intersection(win7)
win7common = len(win7common1)
win8common1 = set(answers1).intersection(win8)
win8common = len(win8common1)
if (win1common or win2common or win3common or win4common or win5common or win6common or win7common or win8common == 3):
print("X win")
elif (win1common or win2common or win3common or win4common or win5common or win6common or win7common or win8common != 3):
print("X lose")
lines = [line1, line2, line3, line4, line5]
for i in range(0, 9):
player_turn()
function()
print(answers1)
I am trying to create tic tac toe. To win the game, I have set up all the possible win scenarios and I am telling the code to see if there is a match. Problem is, I have answer = 0 outside of the function and inside the function, I change its value. This means that when I get to the end of the code, it still equals 0. How can I make it so that it keeps the new value it got inside the function.