2016-12-28 6 views
-1

Ich habe versucht, einen Ladebildschirm für ein Projekt, das ich bisher habe. Ich möchte einen Ladekreis erstellen, aber ich habe keine Ahnung, wie ich Text nach dem Drucken ersetzen kann. Ich möchte ein einzelnes Zeichen durch diese ersetzen: |, \, -,/so wird es einen "Ladekreis" bilden.Ersetzen von Text nach der Ausgabe Python

würde ich die Ausgabe wie folgt aussehen mag: loading ... (Zeichen)

dank

+0

Printed ... wo? Wenn Sie auf dem Papier sind, haben Sie kein Glück. –

+0

auf eine Konsole gedruckt? Welches Betriebssystem verwenden Sie? – danielfranca

Antwort

1

ein Backspace Druck Versuchen. Sie möchten auch den Ausgang spülen, andernfalls kann er zwischengespeichert werden. für zukünftige Benutzer

from time import sleep 
from sys import stdout 

twirlers = r"\|/-" 

stdout.write(twirlers[-1]) 
while True: 
    for ch in twirlers: 
     sleep(0.1) 
     stdout.write(chr(8) + ch) 
     stdout.flush() 
+0

wie hast du es nur x-mal wiederholen? und vielen Dank! –

+0

Verwenden Sie eine "for" -Schleife anstelle der 'while'-Schleife, wie' for _ in range (50) ', um 50-mal zu wiederholen. – kindall

0

Ich habe einen besseren Weg, dies zu tun, gefunden:

import sys 
import time 
print("Processing... ", end=' ') 
#change processing to whatever you like 
syms = ['\\', '|', '/', '-'] 
bs = '\b' 

for _ in range(20): 
    for sym in syms: 
     sys.stdout.write("\b%s" % sym) 
     sys.stdout.flush() 
     time.sleep(.2) #set this number to change the speed