Quais as mudanças que devo fazer para fazer a minha saída de retorno True False com base no estado atual do conselho?

0

Pergunta

Então, eu estou tentando criar uma versão fácil de t2048, e então eu estou tentando começar por encontrar se todos os movimentos são possíveis, ou não, com base na atual diretoria, e eu tenho uma função ispossible(board: Board) que retorna se isso é Verdadeiro ou Falso

No caso de você não saber o que 2048 dizer, isso é o que o jogo é... https://play2048.co/

Eu não estou tentando recriar o jogo inteiro, eu só estou tentando fazer uma versão simples deste que funciona.

def ispossible(board: Board)
    for i in range(0, board):
        for j in range(1, board):
            if [i][j - 1] == 0 and [i][j] > 0:
                return True
            elif ([i][j - 1] == [i][j]) and [i][j - 1] != 0:
                return True
    return False

No entanto, isto não funciona em todos, como eu recebo um 'Erro' quando eu colocar isso como uma entrada

print(ispossible([4,3,2,2],[2,2,8,16], [16,4,4,4], [4,4,4,4]))

O que eu deveria mudar para se certificar de que isso funciona??

error-handling list python
2021-11-24 04:20:52
1

Melhor resposta

1

Como os comentários para a pergunta dizer, você deve primeiro passar em uma única lista de listas conforme o seu Board. Outro problema com o seu exemplo de código é que você não está de indexação para o board variável. Em vez disso, o código é a criação de um tamanho de 1 lista de com i como o único elemento e, em seguida, acessar o j-1th índice. Você provavelmente queria fazer algo como board[i][j - 1] em vez de [i][j - 1]. O mesmo vale para a sua lista de acessos.

2021-11-24 05:49:47

então, basicamente, na frente de todos, [i], eu deveria escrever conselho?
Joshua Bradley

sim, porque atualmente [i] apenas significa que uma lista como [0] na primeira iteração do loop externo. board[i] significaria a i-ésima linha de board
rchome

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................