python 通过pytz模块进行时区的转换,获取指定时区的时间

Posted lowmanisbusy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 通过pytz模块进行时区的转换,获取指定时区的时间相关的知识,希望对你有一定的参考价值。

import pytz
import time
import datetime

print(pytz.country_timezones(cn))  # 查询中国所拥有的时区
print(pytz.country_timezones(us))  # 查询美国所拥有的时区
# [‘Asia/Shanghai‘, ‘Asia/Urumqi‘]
# [‘America/New_York‘, ‘America/Detroit‘, ‘America/Kentucky/Louisville‘, ‘America/Kentucky/Monticello‘, ‘America/Indiana/Indianapolis‘, ‘America/Indiana/Vincennes‘, ‘America/Indiana/Winamac‘, ‘America/Indiana/Marengo‘, ‘America/Indiana/Petersburg‘, ‘America/Indiana/Vevay‘, ‘America/Chicago‘, ‘America/Indiana/Tell_City‘, ‘America/Indiana/Knox‘, ‘America/Menominee‘, ‘America/North_Dakota/Center‘, ‘America/North_Dakota/New_Salem‘, ‘America/North_Dakota/Beulah‘, ‘America/Denver‘, ‘America/Boise‘, ‘America/Phoenix‘, ‘America/Los_Angeles‘, ‘America/Anchorage‘, ‘America/Juneau‘, ‘America/Sitka‘, ‘America/Metlakatla‘, ‘America/Yakutat‘, ‘America/Nome‘, ‘America/Adak‘, ‘Pacific/Honolulu‘]

# 选择时区,生成一个时区对象
tz = pytz.timezone(America/New_York)

# print(datetime.datetime.now()) # datetime.datetime.now()方法 需要传递一个时区,如果不传,就默认是当前用户所在时区

# 得到指定时区的当前时间,然后将时间进行格式化
user_time = datetime.datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S")
print(user_time)

# 将得到的时间转换成时间戳,根据需求按照实际情况进行了时间的加减,然后再将时间进行格式化
# new_time = time.mktime(time.strptime(user_time, ‘%Y-%m-%d %H:%M:%S‘))+int(2)*60
# print(time.strftime("%Y-%m-%d %H:%M", time.localtime(new_time)))

 

以上是关于python 通过pytz模块进行时区的转换,获取指定时区的时间的主要内容,如果未能解决你的问题,请参考以下文章

在 Python 3 的 Pytz 模块中将 EST、CST 和 DST 时区转换为 unix 时间戳

使用pytz的python时区转换问题

python不正确的时区转换使用pytz

关于 Python 中的 pytz 模块和 time 模块

Pytz Python时区转换不起作用

使用 pytz 进行日期时间和时区转换 - 令人兴奋的行为