X

Python – Timestamp der letzten vollen Stunde

Ich erhalte innerhalb eines Scripts aus verschiedenen Datenquellen Informationen, in welchen ein Unix-Timestamp hinterlegt sind. Diese Daten möchte ich, jeweils für die volle Stunde, in eine Datenbank speichern. Die Aufgabe war daher, einen neuen Timestamp zu erzeugen, in welchem die Minuten und Sekunden des originalen Timestamps nicht berücksichtigt sind. Hier das Script mit der Lösung:

import time
import datetime

timestamp = '1387965457'  # der Original-Timestamp
datetimetuple = datetime.datetime.fromtimestamp(int(timestamp))  # Umwandeln in ein datetime-Objekt
print datetimetuple
datetime_fullhour = datetime.datetime(  # Erstellen eines neuen datetime-Objekts, in welchem Minuten und Sekunden genullt sind
    datetimetuple.year,
    datetimetuple.month,
    datetimetuple.day,
    datetimetuple.hour)
print datetime_fullhour
timestamp_fullhour = int(time.mktime(datetime_fullhour.timetuple()))  # Umwandeln des neuen Objekts in einen Unix-Timestamp
print timestamp_fullhour

Und hier ist der Output:

2013-12-25 10:57:37
2013-12-25 10:00:00
1387962000

Falls Ihr Verbesserungsvorschläge oder Anmerkungen habt, einfach in die Kommentare damit 🙂

Torsten Feld :

View Comments (6)

  • Hallo Torsten,

    ich hab grad mal meine Idee mit 2 Beispielen ausprobiert und sie scheint auch zu funktionieren, weiß aber nicht was performanter ist - wahrscheinlich ist es egal ^^

    Und zwar:
    fullhour = timestamp - (timestamp % (60*60))

    Hat bei mir wie gesagt bei 2 Beispielen funktioniert :D

    • Oh, es könnte sogar schneller sein, weil du dir eine Instance einer timedate sparen kannst :D

      • Ich habe es vorhin mal gegengetestet. Du hast Recht. Es funktioniert und ist bedeutend schneller.
        Ich verbinde das mit ner kleinen Anleitung zum timeit-Modul und mache einen Blog-Beitrag daraus. ;)

      • Hi Alex,

        ich jage beides nachher mal durch timeit und schaue mal, welche Funktion schneller ist. Ich danke Dir für den Tipp! :)

  • Ich habe es vorhin mal gegengetestet. Du hast Recht. Es funktioniert und ist bedeutend schneller.
    Ich verbinde das mit ner kleinen Anleitung zum timeit-Modul und mache einen Blog-Beitrag daraus. ;)

  • Python hab ich vor Ewigkeiten ausprobiert und ich glaub jetzt häng ich mich mal wirklich rein! Jetzt find ich diesen Eintrag, dann hab ich sogar einen Kugelschreiber mit der Aufschrift gefunden und alte Dateien etc.
    Damals beim Women Hackers Day in Montreal hat alles begonnen, vor 2 Jahren.. jetzt sollt ich mal weitermachen:)

This website uses cookies.