2015-03-22 7 views
5

Attualmente sto facendo un gioco di memoria in cui stampo alcune parole e dopo un determinato periodo le parole vengono mescolate e quindi una parola viene rimossa e sostituita con una nuova. Quindi vorrei che l'utente rispondesse a quale parola è stata rimossa e quale parola ha sostituito quella parola. Ad esempio, verrà stampata:Come nascondere qualcosa che è già stato stampato in Python

CAT DOG MOUSE HORSE 

E dopo 10 secondi, vorrei quelle parole da nascondere, essere mescolate e sostituire una parola con una nuova parola in modo che stampi, per esempio:

DOG HORSE RABBIT CAT 

Capisco che posso usare time.sleep() per il programma per sospendere l'esecuzione di qualsiasi altro codice.

sarebbe più facile essenzialmente "de-stampare" la prima serie di parole e poi stampare il nuovo o sostituire la prima serie stampata di parole con quello nuovo.

Sono abbastanza nuovo, mi dispiace se non è possibile farlo.

+0

Non è possibile. Una volta che qualcosa viene stampato sulla console, è lì per sempre. Se sei disposto a entrare nella semplice programmazione della GUI, allora potresti farlo. – Zizouz212

+0

Potresti usare curses (o qualche [variante] (http://inventwithpython.com/pygcurse/) se hai Windows). – m0dem

+1

su Windows è possibile terminare la stringa di formato con "\ r" invece di "\ n" sys.stdout.write ("... \ r"% (variabili) sys.stdout.flush() – Marichyasana

risposta

2

È necessario utilizzare una libreria che consente di scrivere sulle coordinate dello schermo. Ho scritto il pacchetto doscmd schermo per fare questo (http://doscmd-screen.readthedocs.org/), e sarebbe lavorare qualcosa come:

import screen, time 
scr = screen.Screen() 
scr.writexy(scr.left, scr.top, "CAT DOG MOUSE HORSE") 
time.sleep(10) 
scr.writexy(scr.left, scr.top, " " * scr.width) 

Nota: il pacchetto era in origine solo per DOS, ma ora supporta anche * nix.

+0

Aspetto elegante! – Zizouz212

+0

Questo è interessante ... – m0dem

+0

Grazie :-) La maggior parte del lavoro pesante è fatto da colorama, ho appena aggiunto funzionalità per recuperare informazioni sullo schermo da varie chiamate di sistema. È piuttosto conveniente nella sua piccolezza per fare semplici compiti. – thebjorn

Problemi correlati