Witam!
W ramach treningu piszę w pythonie konsolową aplikację, która podlicza mój czas pracy, eksportując dane do pliku .json.
Chciałbym aby np. po wpisaniu 'work' program między innymi odświeżał i wyświetlał mi informację ile już pracuję, co powiedzmy 30 sekund. Można użyć funkcji time.sleep(30), zgadza się. Problemem jest jednak to, że wtedy nie mam możliwości, aby to odliczanie przerwać, gdy powiedzmy chcę wpisać "break", aby pójść na przerwę i zmienić tym samym status programu.
Gdy zrobię, by program np. co 10 sekund pytał mnie, czy chcę kontynuować, to jest to bez sensu, bo ma sobie działać w tle, a nie przerywać mi pracy, czekając ma moją decyzję.
Próbowałem na szybko rozwiązania typu:
for i in range(60):
try:
debugInfo("counting, number:", i)
time.sleep(5)
except KeyboardInterrupt:
debugInfo("counting interupted")
ale to w moim przypadku nie działa. Program odlicza dalej, niezależnie, co wcisnę. Jeśli ktoś ma pomysł, jak mogę to zrobić, co użyć, bardzo proszę o podpowiedź. Oczywiście mogę się bez tego obejść, gdy będę chciał sprawdzić czas, to po prostu wpisać "status", ale to nie do końca to, czego oczekuję :)