Java Python计算两个日期之间的时间帧长度
我正在寻找模块ChronoUnitJava Python计算两个日期之间的时间帧长度,java,python,chronounit,Java,Python,Chronounit,我正在寻找模块ChronoUnit java.time.temporal.ChronoUnit Java 8中的Python实现 此模块之所以有用,是因为它包含一个计算日、月、年等的过程。。介于任意日期之间 PS:在Python中实现日期计算,可能会带来很多问题,因为有很多拐角的情况,我现在根本没有时间考虑,所以请在回答时有建设性。 编辑:我认为我的问题还不够清楚,但我试图做到的是能够从一个日期中减去另一个日期,从而得到月、日、年等。。在两者之间 根据juanpa.arrivillaga的
java.time.temporal.ChronoUnit
Java 8中的Python实现
此模块之所以有用,是因为它包含一个计算日、月、年等的过程。。介于任意日期之间
PS:在Python中实现日期计算,可能会带来很多问题,因为有很多拐角的情况,我现在根本没有时间考虑,所以请在回答时有建设性。 编辑:我认为我的问题还不够清楚,但我试图做到的是能够从一个日期中减去另一个日期,从而得到月、日、年等。。在两者之间
根据juanpa.arrivillaga的评论,箭头库提供了一种有用的方法,提供了类似的功能,我想现在我将回答我自己的问题 多亏了@junpa.arrivillaga,我发现多亏了库,这个过程可能很容易用python实现 要使用的api包括以下内容:
arrow.Arrow.range('hour', start, end)
Python中的最后一种方法是:
'''
Computes day, month, year s
between two dates.
frame - time frame
start - date start
end - date finish
This method only works if the generated timeframe between to dates
is finite, as Arrow.range returns a generator!
'''
def count_frame_between_dates(frame, start, end):
return len(list(arrow.Arrow.range(frame, start, end)))
编辑:Arrow.range返回一个生成器,理论上你不能计算生成器的长度,但是如果你确定你使用的生成器返回的是一组有限的元素,那么你可以将这个生成器转换成一个列表,然后使用len()
来计算它的长度
感谢大家。在谷歌上搜索python/api和类似或的教程时,到底出了什么问题?问题是,大多数公布的方法只能以相反的方式工作,我将编辑这个问题以澄清这一点。python标准库
datetime
包包含类date
,time
,datetime
和timedelta
可能就是您要开始查找的地方。还有一个很受欢迎的第三方库,许多人认为它更容易使用,并且与标准库兼容。@juanpa.arrivillaga arrow似乎是一个强大的库!