Hola, soy novato en programación y estoy aprendiendo python, ahora mismo estoy haciendo un pequeño juego de Las tres en raya o tic tac toe sin interfaz gráfica compleja, la duda viene aquí:
Código:
def turno_pcC():
randoms = []
x_pcC = random.choice(range(0, 3))
y_pcC = random.choice(range(0, 3))
while tablero[x_j1 - 1[y_j1 - 1] == "X" or tablero[x_j2 - 1][y_j2 - 1] == "X" or tablero[x_j3 - 1][y_j3 - 1] == "X" or tablero[x_pcB][y_pcB] == "B" or tablero[x_pcA][y_pcA] == "C":
x_pcC = random.choice(range(0, 3))
y_pcC = random.choice(range(0, 3))
tablero[x_pcC][y_pcC] = "C"
Me da error(Invalid Syntax) en esa función, en concreto justo debajo del bucle while. Dejo el código completo por si es de ayuda(no esta terminado):
Código:
import random
tablero = []
ganar = 0
xj_1 = 0
xj_2 = 0
xj_3 = 0
yj_1 = 0
yj_2 = 0
yj_3 = 0
xpc_A = 0
xpc_B = 0
xpc_C = 0
ypc_A = 0
ypc_B = 0
ypc_C = 0
def print_tab(tablero):
for fila in tablero:
print " ".join(fila)
def turno_pcA():
x_pcA = random.choice(range(0, 3))
y_pcA = random.choice(range(0, 3))
while tablero[x_j1 - 1][y_j1 - 1] == "X":
x_pcA = random.choice(range(0, 3))
y_pcA = random.choice(range(0, 3))
tablero[x_pcA][y_pcA] = "A"
def turno_pcB():
x_pcB = random.choice(range(0, 3))
y_pcB = random.choice(range(0, 3))
while tablero[x_j1 - 1][y_j1 - 1] == "X" or tablero[x_j2 - 1][y_j2 - 1] == "X" or tablero[x_pcA][y_pcA] == "A" :
x_pcB = random.choice(range(0, 3))
y_pcB = random.choice(range(0, 3))
tablero[x_pcB][y_pcB] = "B"
def turno_pcC():
randoms = []
x_pcC = random.choice(range(0, 3))
y_pcC = random.choice(range(0, 3))
while tablero[x_j1 - 1[y_j1 - 1] == "X" or tablero[x_j2 - 1][y_j2 - 1] == "X" or tablero[x_j3 - 1][y_j3 - 1] == "X" or tablero[x_pcB][y_pcB] == "B" or tablero[x_pcA][y_pcA] == "C":
x_pcC = random.choice(range(0, 3))
y_pcC = random.choice(range(0, 3))
tablero[x_pcC][y_pcC] = "C"
for fila in range(0, 3):
tablero.append(["O"] * 3)
print_tab(tablero)
x_j1 = input(u"T1 Posición x")
y_j1 = input(u"T1 Posición Y")
tablero[x_j1 - 1][y_j1 - 1] = "X"
turno_pcA()
print_tab(tablero)
x_j2 = input(u"Posición x")
y_j2 = input(u"Posición Y")
tablero[x_j2 - 1][y_j2 - 1] = "X"
turno_pcB()
print_tab(tablero)
x_j3 = input(u"Posición x")
y_j3 = input(u"Posición Y")
tablero[x_j3 - 1][y_j3 - 1] = "X"
turno_pcC()
print_tab(tablero)
Gracias.