3
respostas

Erro: object cannot be interpreted as an integer

Insira aqui a descrição dessa imagem para ajudar na acessibilidade O codigo está o mesmo do professor e o arquivo txt tbm está na mesma pasta.

3 respostas

O script aparentemente está correto, pode ser algum problema de indentação. Mas é bem provável que o erro esteja no texto do arquivo frutas.txt

Removido a pedido do usuario.

Opa Rogerio e Gerson, Boa noite. Obrigado pelo comentário de vocês.Eu testei pelo console do pycharm e rodou. Vou postar os codigos:

**forca.py

from os import open import random

def jogar(): print("****") print("Jogo da Forca***") print("*")

arquivo = open("frutas.txt", "r") #ABRINDO ARQUIVO TXT, EM MODO LEITURA "r"
palavras = []

for linha in arquivo:
    linha = linha.strip()
    palavras.append(linha)

arquivo.close()

print(palavras)

palavra_secreta = "kaki".upper()
letras_acertadas = ["_" for letra in palavra_secreta]
enforcou = False
acertou = False
tentativas = 0
maximo_tentativas = palavra_secreta.__len__() - 1

while (not enforcou and not acertou):
    chute = input("Digite uma letra: ")
    chute = chute.strip().upper()  # RETIRAR ESPAÇOS DA PALAVRA

    if chute in palavra_secreta:
        index = 0
        for letra in palavra_secreta:
            if chute == letra.upper():  # .upper() COLOCA TODAS AS LETRAS EM MAIUSCULO
                letras_acertadas[index] = chute
            index += 1
    else:
        tentativas += 1

    # if tentativas > maximo_tentativas:      #Modo tradicional, usando IF
    #    enforcou = True
    # elif "_" not in letras_acertadas:
    #    acertou = True
    enforcou = tentativas > maximo_tentativas  # Outro modo, sem IF
    acertou = "_" not in letras_acertadas

    print(letras_acertadas)

print("Fim de Jogo!!!")

if (name == "main"): jogar()

**frutas.txt

Morango Banana Maca Acerola