Angenommen, ein datetime.time
-Wert in Python, gibt es einen Standardweg, um eine ganze Zahl von Sekunden hinzuzufügen, so dass 11:34:59
+ 3 = 11:35:02
, zum Beispiel?
Diese offensichtlichen Ideen funktionieren nicht:
>>> datetime.time(11, 34, 59) + 3
TypeError: nicht unterstützter Operandentyp(en) für +: 'datetime.time' und 'int'
>>> datetime.time(11, 34, 59) + datetime.timedelta(0, 3)
TypeError: nicht unterstützter Operandentyp(en) für +: 'datetime.time' und 'datetime.timedelta'
>>> datetime.time(11, 34, 59) + datetime.time(0, 0, 3)
TypeError: nicht unterstützter Operandentyp(en) für +: 'datetime.time' und 'datetime.time'
Letztendlich habe ich Funktionen wie diese geschrieben:
def add_secs_to_time(timeval, secs_to_add):
secs = timeval.hour * 3600 + timeval.minute * 60 + timeval.second
secs += secs_to_add
return datetime.time(secs // 3600, (secs % 3600) // 60, secs % 60)
Ich kann nicht umhin zu denken, dass mir eine einfachere Möglichkeit fehlt, dies zu tun.
1 Stimmen
Bezogene Python-Probleme: datetime.time-Unterstützung für '+' und '-'
0 Stimmen
@jfs Und? Immer noch keine Unterstützung für 2021.