这是我们面临的一个更大问题的一部分,但目前的问题是,根据这些时间在一天中的时间,将两个日期时间的时间分割成两个速率。这是相当武断的,但我们把早上7点到晚上7点视为正常时间,相反的12小时视为额外时间。你知道吗
所以对于任何给定的一对日期时间,我们都需要对它们进行分级,这样我们就可以知道在这段时间里有多少正常的小时,或者有多少额外的小时。举几个例子:
如果我们用接下来的24小时,我会预计12小时的确切时间。你知道吗
> start = datetime.datetime.now()
> end = start + datetime.timedelta(1)
> split_hours(start, end)
(datetime.timedelta(0, 43200), datetime.timedelta(0, 43200))
如果我们在接下来的12个小时,20:26,我预计1小时26分正常,10小时34分保险费率:
> start = datetime.datetime(2017, 11, 6, 20, 26, 0)
> end = start + datetime.timedelta(hours=12)
> split_hours(start, end)
(datetime.timedelta(0, 5160), datetime.timedelta(0, 38040))
“我该怎么做?”这是我的问题。对不起的。我一天中大部分时间都在思考这个问题,但只涉及到以下餐巾纸算法:
但即使在那里我也不知道如何把事情分开。你知道吗
还有一个很自然的扩展——我几乎肯定会在某个时候实现这个扩展——它也将周末的工作时间划分为高级。如果我可以分割时间(就像我的餐巾纸算法一样),那就很容易理解了,但我还是不喜欢那个“代码”有多笨拙。如果你的回答也涵盖了这一点,你可以生我的长子。嗯,不,你可以得到赏金什么的。你知道吗
我在Python中这样做,没有任何真正的库限制(如果有)™ 但是如果你想提交一个原始的C或伪代码的答案,我相信我能读懂它。你知道吗
我们可以:
代码如下:
现在我们可以做一些测试:
退货:
这就是我的方法:
编辑:很抱歉,我忘了发布它返回的内容: 它返回:
含义(高级工作时间、常规工作时间)
相关问题 更多 >
编程相关推荐