如何将dateutil.relativedelta对象转换为datetime.timedelta对象? [英] How to convert dateutil.relativedelta object to datetime.timedelta object?
问题描述
如何将dateutil.relativedelta对象转换为datetime.timedelta对象?
How can I convert a dateutil.relativedelta object to a datetime.timedelta object?
例如
# pip install python-dateutil
from dateutil.relativedelta import relativedelta
from datetime import timedelta
rel_delta = relativedelta(months=-2)
# How can I convert rel_delta to a timedelta object so that I can call total_seconds() ?
time_delta = ???(rel_delta)
time_delta.total_seconds() # call the timedelta.total_seconds() method
推荐答案
您不能出于一个巨大原因:它们没有存储相同的信息. datetime.timedelta
仅存储天,秒和毫秒,而 dateutil.relativedelta
存储馈给它的每个单一时间分量.
You can't, for one huge reason: They don't store the same information. datetime.timedelta
only stores days, seconds, and milliseconds, whereas dateutil.relativedelta
stores every single time component fed to it.
dateutil.relativedelta
这样做对于存储诸如相差1个月之类的内容非常重要,但是由于一个月的长度可以变化,因此这意味着根本没有办法表达在 datetime.timedelta
中也是一样.
That dateutil.relativedelta
does so is important for storing things such as a difference of 1 month, but since the length of a month can vary this means that there is no way at all to express the same thing in datetime.timedelta
.
这篇关于如何将dateutil.relativedelta对象转换为datetime.timedelta对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!