Timer Abfrage

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
TorstenVoelker
User
Beiträge: 124
Registriert: Mittwoch 5. Februar 2025, 12:55

Hallo zusammen ,

ich habe eine Frage , wie kann ich einen timestamp setzen in Python .

Ich möchte gerne das man eine timestamp auf die Datenbank setzt und wenn die Zeit zb 60 min rum sind und man dann erneut das Programm öffnet soll dann zb was anderes angezeigt werden .

Also kleines Beispiel

If Kunde.time >= time() - 1800

Mach was
Benutzeravatar
Dennis89
User
Beiträge: 1503
Registriert: Freitag 11. Dezember 2020, 15:13

Hallo,

dafür gibt es `monotonic`:

Code: Alles auswählen

from time import monotonic, sleep

# In seconds
TIMEOUT = 5


def main():
    timestamp = monotonic()
    print("Warten", end="")
    while True:
        print(".", end="")
        if monotonic() - timestamp >= TIMEOUT:
            print("\nMach was")
            break
        sleep(0.1)


if __name__ == '__main__':
    main()
Grüße
Dennis
"When I got the music, I got a place to go" [Rancid, 1993]
TorstenVoelker
User
Beiträge: 124
Registriert: Mittwoch 5. Februar 2025, 12:55

Ah okay , danke für den Hinweis .
Sirius3
User
Beiträge: 18215
Registriert: Sonntag 21. Oktober 2012, 17:20

@Dennis89: ich denke der Timestamp soll in eine Datenbank, dann ist monotonic nich geeignet.

@TorstenVoelker: Datenbanken haben dafür typischerweise einen Typ namens TIMESTAMP. Der wird in Python normalerweise in ein datetime.datetime-Objekt umgewandelt. Mit datetime.timedelta kannst du dann noch 60min rauf oder runter rechnen.
TorstenVoelker
User
Beiträge: 124
Registriert: Mittwoch 5. Februar 2025, 12:55

Okay , werde es mal nachher versuchen .
Aber danke .

Frohe Ostern Euch !!!
Benutzeravatar
noisefloor
User
Beiträge: 4149
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

es gibt auch Datenbanken, bei denen man eine TTL (time to live) für einen Wert setzen kann. Ist die TTL um, ist der Werk in der Datenbank weg bzw. die Datenbank löscht den selbstständig.

Ansonsten müsstest du mal ein bisschen konkreter werden, was du genau vorhast und das bei dir "die Datenbank" ist.

Gruß, noisefloor
Benutzeravatar
sparrow
User
Beiträge: 4501
Registriert: Freitag 17. April 2009, 10:28

Und da es in dem anderen Thread um mySQL geht, noch der Hinweis: Man kann das vergeben des Zeitstempels auch komplett der Datenbank überlassen. Und sollte das auch tun, falls man dem System, welches das Statement an die Datenbank sende, nicht vertrauen kann.
Antworten