如何将dateutil.relativedelta对象转换为datetime.timedelta对象? [英] How to convert dateutil.relativedelta object to datetime.timedelta object?

查看:61
本文介绍了如何将dateutil.relativedelta对象转换为datetime.timedelta对象?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆