Verändern der Uhrzeit

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • In meinem Programm benötige ich die Uhrzeit, die in drei Stunden sein wird. Dafür verwende ich das aktuelle Datum und addiere 3 der Stunde hinzu. Als nächstes möchte ich die neue Uhrzeit wieder als String (Tag-Monat-Jahr Stunde:Minute) schreiben und diesen in dessen Unixform umwandeln.

    Ich erhalte jedoch einen Error. Ich vermute, dass Import datetime und from datetime import datetime nicht beide in einem Programm verwendet werden können. Was kann ich an meinem Code ändern, damit ich nicht beide benötige?

    Error ohne import datetime:

    dt = datetime.datetime(tag, monat, jahr, stunde, minute)

    AttributeError: type object 'datetime.datetime' has no attribute 'datetime'

    Error mit import datetime:

    datum= datetime.strptime(datum_str,'%d-%m-%Y %H:%M') #aktuelles Datum als datetime

    AttributeError: module 'datetime' has no attribute 'strptime'

    Verwende ich eine falsche Bibliothek? Ist mein Code überhaupt umsetzbar? Ich bin noch recht neu in Python, falls meine Problemstellung anders leichter zu lösen ist, würde ich mich um ein Kommentar freuen. :helpnew:

  • Hallo, ich gehe jetzt mal davon aus das du mit Unixtime einen timestamp meinst.

    Verwende ich eine falsche Bibliothek?

    Nein, datetime eignet sich hierfür hervoragend und noch viel einfacher als du gerade meinst:

    Python
    import datetime
    # aktuelle Zeit
    now = datetime.datetime.now()
    # Erstelle gewünschtes Zeitdelta
    delta = datetime.timedelta(hours=3)
    future = now + delta
    # Umwandlung in Timestamp
    timestamp = future.timestamp()
    print(timestamp)
    • Offizieller Beitrag

    AttributeError: module 'datetime' has no attribute 'strptime'

    Funktioniert kein einfaches import datetime ?

    //Edit Doch nicht, aber so: https://stackoverflow.com/a/12070426

  • Hallo, ich gehe jetzt mal davon aus das du mit Unixtime einen timestamp meinst.

    Nein, datetime eignet sich hierfür hervoragend und noch viel einfacher als du gerade meinst:

    Python
    import datetime
    # aktuelle Zeit
    now = datetime.datetime.now()
    # Erstelle gewünschtes Zeitdelta
    delta = datetime.timedelta(hours=3)
    future = now + delta
    # Umwandlung in Timestamp
    timestamp = future.timestamp()
    print(timestamp)

    Vielen Dank!!! :danke_ATDE::danke_ATDE::danke_ATDE:

  • Hallo, ich gehe jetzt mal davon aus das du mit Unixtime einen timestamp meinst.

    Nein, datetime eignet sich hierfür hervoragend und noch viel einfacher als du gerade meinst:

    Python
    import datetime
    # aktuelle Zeit
    now = datetime.datetime.now()
    # Erstelle gewünschtes Zeitdelta
    delta = datetime.timedelta(hours=3)
    future = now + delta
    # Umwandlung in Timestamp
    timestamp = future.timestamp()
    print(timestamp)

    Nur noch eine kurze Frage. Ich bekomme folgende Ausgabe:

    2019-01-04 17:19:55.479761 #aktuelle Zeit

    2019-01-04 20:19:55.479761 #veränderte Zeit

    1546629595.479761

    Gibt es auch einen Befehl, damit die Sekunden nicht angezeigt werden? :conf:

    Ziel wäre die Ausgabe: 04-01-2019 20:19

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!