Python usa any () y all () para verificar si una lista contiene un conjunto de valores u otro

Mi código es para un juego de Tic Tac Toe y para verificar el estado de un sorteo, pero creo que esta pregunta podría ser más útil en un sentido general.

Tengo una lista que representa el tablero, se parece a esto:

board = [1,2,3,4,5,6,7,8,9]

Cuando un jugador hace un movimiento, el int en el que se movió es reemplazado por su marcador ('x' o 'o'), ya tengo cheques en su lugar para buscar un estado ganador, lo que no puedo hacer es verificar un empate estado, donde ninguno de los valores de la lista es ints pero no se ha establecido un estado ganador.

El código que tengo hasta ahora:

if any(board) != playerOne or any(board) != playerTwo:
    print 'continue'
elif all(board) == playerOne or playerTwo:
    print 'Draw'

La declaración if funciona, el elif no, creo que el problema es mi 'o' operador, lo que quiero verificar es: si cada elemento del tablero es un marcador playerOne o playerTwo, si el lugar donde debo hacer el código:

elif all(board) == playerOne or all(board) == playerTwo:

Estaría revisando para ver si cada lugar en el tablero era jugador. Uno o cada lugar en el tablero es jugador dos, lo que no será.

Entonces, ¿cómo verifico si el tablero está ocupado por una combinación de marcadores playerOne y playerTwo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta