Il mio codice è per un gioco Tic Tac Toe e il controllo per uno stato di disegnare ma penso che questa domanda potrebbe essere più utile in un senso generale.python utilizzando any() e all() per verificare se un elenco contiene un set di valori o un altro
Ho una lista che rappresenta il bordo, sembra che questo:
board = [1,2,3,4,5,6,7,8,9]
Quando un giocatore fa una mossa INT si sono mossi sul viene sostituito con il proprio segnalino ('x' o 'O') , Ho già degli assegni per cercare uno stato vincente, quello che non posso fare è controllare uno stato di pareggio, dove nessuno dei valori di lista è stato inserito ma non è stato impostato uno stato vincente.
Il codice che ho finora:
if any(board) != playerOne or any(board) != playerTwo:
print 'continue'
elif all(board) == playerOne or playerTwo:
print 'Draw'
Il se lavori istruzione, l'Elif non, penso che il problema è il mio 'o' operatore, quello che voglio verificare è: se il ogni punto sul tabellone è o marcatore Playerone o pennarello playerTwo, se io dove per rendere il codice:
elif all(board) == playerOne or all(board) == playerTwo:
sarei andato a vedere se ogni posto sul tabellone era Playerone o ogni luogo sul tabellone è playerTwo, quale non sarà.
Quindi, come posso controllare se la scacchiera è occupata da una combinazione di indicatori di giocatore singolo e giocatore di due indicatori?
che non è proprio come [ 'qualsiasi()'] (http://docs.python.org/3/library/functions.html#any) e [ 'tutto()' ] (http://docs.python.org/3/library/functions.html#all) work: _ "Restituisce' True' se (any/all) l'elemento di iterable è true.Se il iterable è vuoto, return Falso. "_ –