Hallo Leute - ich bin ein absoluter Python-DAU und habe ein kleines Python Script das im LXTerminal meines Knoppix 7.5 läuft.
Leider gibt es dort eine Wartezeit die mit dem print Befehl 'Nun 5 Minuten warten' anzeigt wird.
Aber ich würde sehr gerne immer wissen wie lange es noch dauert, also in der Zeile darunter die Zeit von 5 Minuten abwärts zählen lassen.
Hab danach verschiedens gegoole't aber nichts passendes gefunden?
Kann mir irgend jemand helfen was ich als Python Code eingeben muss um die beschriebene Funktion zu erhalten?
THX - im vorraus an alle
******************************************************************************************
Also wie seagt da ich mich mit Python nicht auskenne habe ich als erste Hilfe folgendes probiert:
den alten time.sleep(300) habe ich ersetzt durch
time.sleep(60)
print ('Noch 4 Minuten')
time.sleep(60)
print ('Noch 3 Minuten')
time.sleep(60)
print ('Noch 2 Minuten')
time.sleep(60)
print ('Noch 1 Minute')
Das ist nicht nur wenig elegant und dazu belege ich ganze 4 Zeilen die mir meine anderen Ausgaben nach oben schieben
Counter? Möchte 5 Minuten runterzählen und dabei anzeigen?
@maximalz: Wenn ich Dich richtig verstanden habe, willst Du nicht, dass jedesmal eine neue Zeile begonnen wird. Das kann man verhindern, indem der newline durch ein carriage-return ersetzt wird:
Code: Alles auswählen
print()
for minutes in reversed(range(1,6)):
print('\rNoch %d Minute%s' % (minutes, 'n' if minutes!=1 else ' '), end='', flush=True)
time.sleep(60)
print()
@Sirius3:
Danke für die schnelle Antwort, allerdings scheine ich was falsch zu machen ?
Habe Deinen Programm Code jetzt einfach kopiert und an Stelle meines Versuches rein kopiert nur bekomme ich dann sofort eine Fehlermeldung - IndentationError: expected an indented block ?
Was mache ich da falsch ?
Danke für die schnelle Antwort, allerdings scheine ich was falsch zu machen ?
Habe Deinen Programm Code jetzt einfach kopiert und an Stelle meines Versuches rein kopiert nur bekomme ich dann sofort eine Fehlermeldung - IndentationError: expected an indented block ?
Was mache ich da falsch ?
@Sirius3:
ich habe es nun nach besten Gewissen eingerückt, allerdings kommt nun ein neuer Fehler?
Das oben gezeigte ist der Ausschnitt im Programm Code wo ich Deinen Part eingefügt habe und wo vorher der alte Teil war.
Bei dem deute ich dann mal ich habe irgendwo was falsch geschrieben --> SyntaxError: invalid syntax
ich habe es nun nach besten Gewissen eingerückt, allerdings kommt nun ein neuer Fehler?
Code: Alles auswählen
(doc['dateString'], doc['sgv']))
print()
for minutes in reversed(range(1,6)):
print('\rNoch %d Minute%s' % (minutes, 'n' if minutes!=1 else ' '), end='', flush=True)
time.sleep(60)
print()
client.close()
except:
print('Fehler in der Verarbeitung neustart in 10 Sekunden')
time.sleep(10)
Bei dem deute ich dann mal ich habe irgendwo was falsch geschrieben --> SyntaxError: invalid syntax
@maximalz: Dein Gewissen ist dem Compiler egal, den interessieren nur die syntaktischen Regeln von Python.
Das ”nackte” ``except:`` ohne eine konkrete Ausnahme mit der ”behandlung” der Ausnahme, die keine sinnvolle Behandlung ist, sollte so nicht sein.
Das ”nackte” ``except:`` ohne eine konkrete Ausnahme mit der ”behandlung” der Ausnahme, die keine sinnvolle Behandlung ist, sollte so nicht sein.
@alle:
hier die Fehlermeldung die ich bekomme, leider nur als Foto via Handy
https://drive.google.com/file/d/0ByUQqT ... sp=sharing
hier die Fehlermeldung die ich bekomme, leider nur als Foto via Handy
https://drive.google.com/file/d/0ByUQqT ... sp=sharing
@maximalz: Kann es sein das Du Python 2 verwendest? Warum hast Du dann im ersten Beitrag die sinnfreien Klammern um die Zeichenkette bei der ``print``-*Anweisung*. In Python 2 ist das keine Funktion und hat demendsprechend auch nicht die Möglichkeiten Argumente entgegen zu nehmen. In Python 2 müsstest Du das über `sys.stdout` und dessen `write()` und `flush()`-Methode regeln, oder als ersten Import in dem Modul ``from __future__ import print_function`` schreiben, damit aus der Anweisung eine Funktion wird.
@alle:
Ja also das wusste ich nicht - SORRY - ich dachte durch die Angabe des Knoppix 7.5 würde sich die Version des Python ergeben, meine Schuld.
Kann mir jemand sagen wie ich herraus finde welche Version von Python auf meinem Knoppix läuft? Mit welchem Befehl unter Linux Terminal ?
Erledigt einfach python eingeben, na klar. Also es ist die 2.7.9
Ja also das wusste ich nicht - SORRY - ich dachte durch die Angabe des Knoppix 7.5 würde sich die Version des Python ergeben, meine Schuld.
Kann mir jemand sagen wie ich herraus finde welche Version von Python auf meinem Knoppix läuft? Mit welchem Befehl unter Linux Terminal ?
Erledigt einfach python eingeben, na klar. Also es ist die 2.7.9
@maximalz: Im Grunde musst Du nur den beschriebenen `__future__`-Import an der passenden Stelle einfügen und schauen ob es dann funkioniert. In der Hoffnung dass a) die Python-Version nicht zu alt ist, und b) alle ``print``-Anweisungen in dem Modul konsequent geschrieben wurden als wäre ``print`` eine Funktion. Falls b) nicht zutrifft sollte man das aber sowieso mal vereinheitlichen.
Du solltest den Screenshot löschen, man kann dein Gesicht sehen.
Kann man Knoppix installieren (?), schau dir mal "andere" Distributionen an, falls du dauerhaft mit Linux arbeiten willst. Hat mich noch nicht überzeugen können (muckerte bei mir immer (!) rum und ich brauche ein jederzeit einsatzbereites Gerät) und ich brauche ein System, wo ich Windows-Software nativ einsetzen kann. Von mir daher keine Empfehlung zu Linux.
Warum verwendest du nicht IDLE? In der Shell siehst du auch direkt die Python-Version.
Kann man Knoppix installieren (?), schau dir mal "andere" Distributionen an, falls du dauerhaft mit Linux arbeiten willst. Hat mich noch nicht überzeugen können (muckerte bei mir immer (!) rum und ich brauche ein jederzeit einsatzbereites Gerät) und ich brauche ein System, wo ich Windows-Software nativ einsetzen kann. Von mir daher keine Empfehlung zu Linux.
Warum verwendest du nicht IDLE? In der Shell siehst du auch direkt die Python-Version.