1
resposta

Dúvida na escrita do while.

Olá, estou com uma dúvida em relação ao While. Eu poderia escrever dessa forma?

def jogar():

    print("*********************************")
    print("***Bem vindo ao jogo da Forca!***")
    print("*********************************")

    palavra_secreta = "banana".upper()
    letras_acertadas = ["_", "_", "_", "_", "_", "_"]

    enforcou = False
    acertou = False
    erros = 0

    print(letras_acertadas)

    while (acertou is False and enforcou is False):

        chute = input("Qual letra? ")
        chute = chute.strip().upper()

        if (chute in palavra_secreta):
            index = 0
            for letra in palavra_secreta:
                if (chute == letra):
                    letras_acertadas[index] = letra
                index += 1
        else:
            erros += 1

        enforcou = erros == 6
        print(letras_acertadas)

    if (acertou):
        print("Você ganhou!")
    else:
        print("Você perdeu!")
1 resposta

Olá Leonardo, não vi problemas em você escrever dessa forma. Como a ideia é a negação dessas duas variáveis temos algumas alternativas:

  • acertou is False
  • not acertou
  • acertou == False

O importante nessa hora é deixar o código legível e sem muitas voltas para que outros desenvolvedores possam olhar e logo entender o que estão lendo.