Clean the console after each execution of the main while

3

Good friends. The fact is the following, I have a small code of the game hanged, nevertheless every time that its main function is executed it goes advancing downwards leaving the previous action above as it is typical in the terminal. I would like it to be cleaned after entering a letter. Pq if all the attempts are not accumulated and the terminal is full and it is a bit confusing. here the code. I would appreciate your help

import random
import os

IMAGENES=["A  ","AH  ","AHO  ","AHOR  ","AHORC  ","AHORCA  ","AHORCAD  
","AHORCADO  "]
PALABRAS=[
"lavadora",
"secadora",
"sofa",
"gobierno",
"computadora",
"cubo",
"paralelepipedo"
]

def randomWord():
    indiceAlea=random.randint(0,len(PALABRAS)-1)
    return PALABRAS[indiceAlea]

def displayBoard(hiddenWord,intentos):
    print(IMAGENES[intentos])
    print("")
    print(hiddenWord)   
    print("--- * ---- --- * ---- --- * ---- --- * ---- --- * ---- --- * ----
    ")

def body():
    word=randomWord()
    hiddenWord=["_"]*len(word)
    intentos=0

letrasUsadas=[]
while True:
    displayBoard(hiddenWord,intentos)
    letraIntro=str(input("Escoge una letra:  "))
    letrasUsadas.append(letraIntro)
    print("Ya ha utilizado las siguientes letras",letrasUsadas)
    listLetras=[]
    for i in range(len(word)):
        if word[i]==letraIntro:
            listLetras.append(i)
    if len(listLetras)==0:
        intentos+=1

        if intentos==8:
            print("")
            print("Usted ha perdido, la palabra era",word)
            break
    else:
        for i in listLetras:
            hiddenWord[i]=letraIntro
        listLetras=[]
    os.system("cls")

    try:
        hiddenWord.index("_")
    except ValueError:
        print("")
        print("Felicidades, has ganado, la pabra es",word)
        break

if __name__ == '__main__':
    print("B  I  E  N  V  E  N  I  D  O    A     A  H  O  R  C  A  D  O")


    body()

Something like cleaning the terminal manually as it would be in windows with cls. But I do the same program after each iteration of the main while cycle.

    
asked by limg21 20.05.2017 в 02:42
source

2 answers

2

If your script runs in the Windows console you can use cls as you say using the os module in the standard library:

import os

for _ in range(5):
    input('Ingrese algo:  ')
    os.system('cls')
    
answered by 20.05.2017 / 02:53
source
0

I'm doing something similar but a little more antiquated my programming, you can delete the terminal so you can not see the keyword or guess. right now it is not finished or very structured yet I still need to program for letters that are repeated and only works up to 6 letters.

palabra_clave = input("Dame la palabra secreta: ")

print("Palabra de " , len(palabra_clave) , " letras")
cuenta = len(palabra_clave)
palabra_prueba = ""
i = 0
while i in range(cuenta):
    palabra_prueba = palabra_prueba + palabra_clave[i] + " "
    i += 1
palabra_prueba = palabra_prueba[0 : (cuenta*2)-1]
#print(palabra_prueba)
palabra_concatenada = ""
i = 0

for i in range(cuenta):
    palabra_concatenada = palabra_concatenada + "_" + " "

print(palabra_concatenada)
errores = 1

while errores <=6 and palabra_concatenada != palabra_prueba:
    letra_prueba = input("Dame una letra: ")
    existe = palabra_clave.count(letra_prueba)

if existe:
    letra_doble = (palabra_clave.count(letra_prueba))
    if letra_doble >= 2:
        letra1 = palabra_clave.index(letra_prueba)
        letra2 = palabra_clave.rindex(letra_prueba)
        print(letra1)
        print(letra2)


    else:
        letra1 = palabra_clave.index(letra_prueba)
        print (letra1)
        if letra1 == 0:
            palabra_concatenada = palabra_clave[0] + palabra_concatenada[1 : len(palabra_concatenada)-1]
            print(palabra_concatenada)
        elif letra1 == 1:
            palabra_concatenada = palabra_concatenada[0 : 2] + palabra_clave[1] + palabra_concatenada[3 : len(palabra_concatenada)]
            print(palabra_concatenada)
        elif letra1 == 2:
            palabra_concatenada = palabra_concatenada[0 : 4] + palabra_clave[2] + palabra_concatenada[5 : len(palabra_concatenada)]
            print(palabra_concatenada)
        elif letra1 == 3:
            palabra_concatenada = palabra_concatenada[0: 6] + palabra_clave[3] + palabra_concatenada[7 : len(palabra_concatenada)]
            print(palabra_concatenada)
        elif letra1 == 4:
            palabra_concatenada = palabra_concatenada[0 : 8] + palabra_clave[4] + palabra_concatenada[9 : len(palabra_concatenada)]
            print(palabra_concatenada)
        elif letra1 == 5:
            palabra_concatenada = palabra_concatenada[0 : 10] + palabra_clave[5] + palabra_concatenada[11 : len(palabra_concatenada)]
            print(palabra_concatenada)


else:
    print("Esa letra no existe XD ")
    print("llevas " , errores , " errores")
    print(palabra_concatenada)
    errores = errores + 1
letra1 = ""
letra2 = ""
#index = palabra_clave.index(letra_prueba)
#print(index)


if errores >=6:
    print("Ahorcado")
else:
    print("Ganaste")
    
answered by 06.01.2019 в 22:44