387 Stimmen

Umrechnung eines Zeitdeltas in Tage, Stunden und Minuten

Ich habe ein Timedelta. Ich möchte die Tage, Stunden und Minuten davon - entweder als Tupel oder als Wörterbuch... Das ist mir egal.

Ich muss dies ein Dutzend Mal in einem Dutzend Sprachen im Laufe der Jahre getan haben, aber Python hat in der Regel eine einfache Antwort auf alles, so dass ich dachte, ich würde hier fragen, bevor busting aus einigen ekelhaft einfach (aber wortreich) Mathematik.

Herr Fooz spricht ein gutes Argument an.

Ich habe es mit "Angeboten" zu tun (ähnlich wie bei ebay), bei denen jedes Angebot eine bestimmte Dauer hat. Ich versuche, die verbleibende Zeit zu ermitteln, indem ich when_added + duration - now

Liege ich richtig, wenn ich behaupte, dass dies nicht mit der Sommerzeit zusammenhängt? Wenn nicht, wie kann man am einfachsten eine Stunde addieren/subtrahieren?

1voto

Adrian Punkte 594

Bei Verwendung von Pandas (mindestens Version >1.0), die Timedelta Klasse hat eine components Attribut, das ein benanntes Tupel mit allen Feldern in übersichtlicher Form zurückgibt.

z.B..

import pandas as pd
delta = pd.Timestamp("today") - pd.Timestamp("2022-03-01")
print(delta.components)

-6voto

Jochen Ritzel Punkte 99416

Zeiteltas haben eine days y seconds Attribut können Sie sie mit Leichtigkeit selbst umwandeln.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X