检查时区的日期是否超过当前时间

时间:2015-09-25 12:40:33

标签: python date datetime timezone pytz

我收到<DstTzInfo 'Europe/Paris' PMT+0:09:00 STD>格式的时间,并且我还有tz = pytz.timezone('Europe/Paris') d = parse("14:39").replace(tzinfo=tz) now = datetime.datetime.now(tz) print (d - now).total_seconds() 格式的时区。我想看看,如果这个日期已经过了该时区的当前时间。

我当前的时区可能与我收到的时区不同,因此我使用以下内容:

now = datetime.datetime.replace(tzinfo=tz

即使巴黎目前的时间是14:39,我仍然得到6600秒。我也尝试了app.controller('MainCtrl', function($scope) { $scope.name = 'World'; $scope.outputType=["Coal","ROM","WASTE"]; $scope.months=["JAN","FEB","MARCH","APRIL"]; $scope.values = []; $scope.save=function(){ alert($scope.values) } }); ),但我得到了-3600秒。

我想要的是在指定的时区内有时间,检查是否通过了。

1 个答案:

答案 0 :(得分:0)

这个怎么样:

from datetime import datetime
from dateutil import tz

tz = tz.gettz('Europe/Paris')
now = datetime.now().replace(tzinfo=tz)
d = datetime.strptime("{0}/{1}/{2} 14:39".format(now.year,now.month,now.day), "%Y/%m/%d %H:%M").replace(tzinfo=tz)

print (d-now).total_seconds()

我将当前时间保留在现在,在欧洲/巴黎时区,并在同一时区创建 d 。如果他们的差异为负,则该日期已经过该时区的当前时间。