[英]Next DateTime object pertaining to a time
我希望将设置的每日维护时段+ UTC偏移量转换为该维护时段的下一次出现。
假设维护时段为10 PM-4AM,UTC偏移为-4。 我想做的是为该维护窗口的下一次出现的开始和结束都生成一个datetime对象。
例如,如果当前为2014年6月2日下午1:40,UTC偏移为-4,则我希望2014年6月3日02:00 AM UTC和2014年6月3日08:00 AM UTC
另外,如果当前在维护窗口中,则希望当前窗口开始和结束。
也就是说,如果当前是2014年6月2日10:30 PM,UTC偏移为-4,我仍然希望2014年6月3日02:00 AM UTC和2014年6月3日08:00 AM UTC
编辑:也可以接受,甚至可能更喜欢,将是相同的方法,只是时间而不是日期。 我需要将其存储在MySQL数据库中,因此,如果我有一个很好的方法可以在不包括日期的情况下进行此操作,那么我可以接受!
我很难弄清楚如何将偏移量传递给pytz或datetime,所以我选择只编写自己的转换器:
def convert_utc(hour, minute, offset):
utchour = hour - math.floor(offset)
utcminute = minute
#Parts of India are offset by half an hour
if offset%1 == 0.5:
#minutes
if offset > 0:
utchour -= 1
utcminute = minute + 30
if utchour > 24:
utchour -= 24
if utchour < 0:
utchour = 24 + utchour
return int(utchour), int(utcminute)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.