如何获取特定时区的当前时间?

时间:2018-12-12 16:30:41

标签: python python-3.x

我正在如下使用datetime模块来获取当前时间:

 datetime.now().strftime('%I:%M:%S %p')

这给了我当前时间,但以UTC表示。如何获得CST的当前时间? 我可以在不使用其他外部库的情况下做到这一点吗,还是使用其他东西更容易?

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

如果没有外部库,这可能会很棘手,所以我建议您使用pytz软件包

pip install pytz

here的帮助下,您可以尝试以下类似操作

from datetime import datetime
from pytz import timezone

now_time = datetime.now(timezone('America/Chicago'))
print(now_time.strftime('%I:%M:%S %p'))

我使用了America/Chicago,因为根据this它位于CDT时区。

但是,如果您有兴趣在本地执行此操作,则必须阅读官方文档中的更多here,因为它提供了一些有关执行此操作的示例,但是如果您是本地用户,则会大声疾呼。初学者。

答案 1 :(得分:0)

嗯,此解决方案取决于模块pytz

import pytz
import datetime

print(datetime.datetime.now(pytz.timezone('US/Central')))

如果您需要了解所有可用时区

for tz in pytz.all_timezones:
    print(tz)