Timer bei Python?
Hallo,
ich möchte in Python ein kleines Spiel programmieren, bei dem man eine Rechenaufgabe gestellt bekommt und 20 Sekunden Zeit hat, diese zu lösen. Wie kann ich den dafür benötigten Timer in das Spiel einbauen?
Vielen Dank schonmal im Voraus!
2 Antworten
Du wirst wohl Multithreading benutzen müssen. Vom Prinzip her ist ein Thread der, der auf die Antwort wartet & prüft, und der zweite der, der wartet.
Der Erste ist der main-Thread. Wenn er die richtige Lösung findet, weckt er den anderen auf und macht ihn platt. Wenn die Zeit vorbei ist (ohne das der zweite Thread plattgemacht wurde, denn dann könnte er ja nicht mehr zählen), schickt er ein Event an den Ersten von wegen: "zeit vorbei!" und dann weiß der Erste Bescheid.
Die Methode zum warten ist thread.sleep()
from time import sleep
Dann "sleep()" schreiben und in die Klammer die Sekunden setzten!
Dann kann man aber keine Antwort geben in der Zeit.
Man könnte auch einfach die Antwort abfragen und dann prüfen, wieviel Zeit vergangen ist und ob es innerhalb der Zeitvorgabe war. Wirklich gut aber wie schon in einer anderen Antwort nur mit Threads.