zeile ersetzen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
xwastedyouthx
User
Beiträge: 27
Registriert: Montag 20. August 2007, 13:19

moin moin,
habe mal wieder ein kleines problemchen.

wenn ich am bildschirm mit dem print befehl etwas ausgebe wird immer eine neue zeile erstellt.

wie schaffe ich es, dass mein ergebnis immer in der gleichen zeile auf dem screen ausgegeben wird?

danke im voraus.
Benutzeravatar
C4S3
User
Beiträge: 292
Registriert: Donnerstag 21. September 2006, 10:07
Wohnort: Oberösterreich

Hallo!

Ich persönlich würde als erstes versuchen, über "Steuerzeichen" das zu erreichen, was ich will.

http://docs.python.org/ref/strings.html

Aber da Python auch für mich noch Neuland ist, ist es wahrscheinlich, dass es noch andere, bessere Möglichkeiten gibt.
Gruß!
Benutzeravatar
xwastedyouthx
User
Beiträge: 27
Registriert: Montag 20. August 2007, 13:19

die steuerzeichen sind doch für den string selbst und nicht für die steuerung der ausgabe oder?
BlackJack

Ein Komma am Ende der ``print``-Zeile verhindert die Ausgabe des Zeilenumbruchs und ein '\r' ("carriage return"=Wagenrücklauf) befördert den Cursor wieder an den Zeilenanfang. Man kann statt ``print`` zu benutzen auch direkt auf die Standardausgabe schreiben. Die `flush()`-Methode braucht man, wenn jede Zeile auch *sofort* rausgeschrieben werden soll.

Code: Alles auswählen

import sys
import time


def main():
    print
    for i in reversed(xrange(0, 11)):
        sys.stdout.write('\rCountdown %d ' % i)
        sys.stdout.flush()
        time.sleep(1)
    print '\rIgnition           '
Benutzeravatar
xwastedyouthx
User
Beiträge: 27
Registriert: Montag 20. August 2007, 13:19

hey, wunderbar :)
klappt einwandfrei.

mal wieder danke!!


:P
Antworten