如何在 Python 中获取或打印 GMT 时区的当前日期时间? [复制]

Posted

技术标签:

【中文标题】如何在 Python 中获取或打印 GMT 时区的当前日期时间? [复制]【英文标题】:How can I get or print current datetime of GMT time zone in Python? [duplicate] 【发布时间】:2020-12-19 09:55:33 【问题描述】:

我在这里打印 UTC 时区的当前日期时间。我想通过这种方法获得当前 GMT 时区的日期时间。我该怎么办?

   import datetime

   dt_utcnow = datetime.datetime.utcnow()
   print(dt_utcnow)

输出

   2020-08-31 09:06:26.661323

【问题讨论】:

这能回答你的问题吗? How to convert datetime.time from UTC to different timezone? UTCGMT :-) from datetime import datetime, timezone utc_time = datetime.now(timezone.utc) GMT 和 UTC 相差不到一秒,但它们并不相同。如果您需要 1 秒内的准确性,那么它们是不可互换的。 【参考方案1】:

你可以使用 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()))

【讨论】:

其实我也想要这样。谢谢先生。 【参考方案2】:

首先需要导入pytz模块(需要使用CMD安装:pip install pytz)。 Pytz 库允许您使用时区。

为了使代码更清晰,我们将时区保存到变量 GMT 中,如下所示:

GMT = pytz.timezone("Etc/GMT")

如果你想现在所有可能的时区,你可以打印出pytz.all_timezones。现在,有几种方法可以解决您的问题,但我将向您展示其中的两种:

    将您的 UTC 时间本地化为 GMT:dt_gmt = GMT.localize(dt_utcnow)

    将您的时间转换为 GMT:dt_gmt = dt_utcnow.astimezone(gmt)

【讨论】:

谢谢兄弟。但是当我尝试通过 pip "pip install pytz" 安装 pytz 时。但它显示“要求已经满足:c:\users\jjj\anaconda3\lib\site-packages 中的 pytz”。解决办法是什么? 没关系。它只是说你已经安装了这个库。 c:\users\... 只是您 PC 上库的位置。 但我无法导入。我该怎么办?

以上是关于如何在 Python 中获取或打印 GMT 时区的当前日期时间? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Python 中将本地时间转换为 GMT 时区

如何在 Dart/Flutter 中获取当前时间的 GMT 时间偏移值

使用本地时区在 Python 中获取正确的时区偏移量

如何在Elm中以GMT显示当前时区偏移量

Log4cpp:在 UTC/GMT 时区打印日期

IOS - 以 GMT 格式获取设备的当前时区