问题描述
在这里打印UTC时区的当前日期时间。我想通过这种方法的当前格林尼治标准时区的日期时间。我该怎么办?
import datetime
dt_utcNow = datetime.datetime.utcNow()
print(dt_utcNow)
2020-08-31 09:06:26.661323
解决方法
您可以使用time模块的gmtime()实现此目的:
from datetime import datetime
from time import gmtime,strftime
now = datetime.now()
current_time = now.strftime("%H:%M:%S")
print("Current Time =",current_time)
print("Your Time Zone is GMT",strftime("%z",gmtime()))
,
首先,您需要导入pytz模块(需要使用CMD:pip install pytz
安装它)。 Pytz库允许您使用时区。
为使代码清晰,我们将时区保存到变量GMT中,如下所示:
GMT = pytz.timezone("Etc/GMT")
如果您现在想要所有可能的时区,则只需打印出pytz.all_timezones
。现在,有几种方法可以解决您的问题,但我将向您展示其中两种:
-
将您的UTC时间本地化为格林尼治标准时间:
dt_gmt = GMT.localize(dt_utcnow)
-
将您的时间转换为GMT:
dt_gmt = dt_utcnow.astimezone(gmt)