Ich habe eine unendliche Schleife für die wie so läuft:zunehmende Timer in Python
for I in count():
#doing something
savetask = savedata()
if savetask == None:
timerfunction()
def timerfunction():
time.sleep(60)
Meine Frage oder besser gesagt, was ich erreichen will, ist eine Funktion, die wie folgt ausgeführt wird. #do etwas, wenn savetask == None, Schlaf für 60 Sekunden, wiederhole für Schleife, wenn savetask == Keine WIEDER, Schlaf für 300 Sekunden, wiederhole für Schleife, wenn savetask == Keine WIEDER, Schlaf für 600 Sekunden ... etc etc Wenn savetask! = None, dann möchte ich es nach 60 Sekunden oder am Anfang neu starten.
Muss ich zusätzliche Variablen übergeben, damit es weiß, dass die Funktion zum zweiten Mal ausgeführt wird und savetask == None?
Jede Hilfe oder Anleitung wäre willkommen.
Edit:
Weil ich bin mit count() und die Zählung Funktion ist:
def count(I=0)
while not finished():
yield I
I += 1
das bedeutet, dass ich um eins erhöht jedes Mal? Also könnte ich das vielleicht verwenden, um zu zählen, wie oft die Funktion ausgeführt wird, und setze i zurück, wenn savetask! = None?
warum erhielt ich 2 unten Abstimmungen ???? – Dorian
woher bekommst du savetask? – Hamlett
@Hamlett Ich habe meinen obigen Code bearbeitet. Nicht sicher, ob es tatsächlich zu dem Problem gehört, aber wenn es dann hilft, dann gut. Es gibt jedoch viel mehr Code davor ... – Dorian