3
在DB中,我有表(用戶),它爲該用戶存儲時區(作爲字符串值,例如:「歐洲/奧斯陸」)。 現在,我需要獲得所有用戶,當地時間現在是例如:9AM。pytz:獲取所有時區,現在具體時間
有沒有什麼好的方法來做到這一點,而不是讓所有的用戶循環?如果pytz能夠返回時區列表,那麼現在的時間是9AM,我可以使用簡單的IN SQL語句。
在DB中,我有表(用戶),它爲該用戶存儲時區(作爲字符串值,例如:「歐洲/奧斯陸」)。 現在,我需要獲得所有用戶,當地時間現在是例如:9AM。pytz:獲取所有時區,現在具體時間
有沒有什麼好的方法來做到這一點,而不是讓所有的用戶循環?如果pytz能夠返回時區列表,那麼現在的時間是9AM,我可以使用簡單的IN SQL語句。
import datetime
import pytz
now = datetime.now(pytz.utc)
# datetime.datetime(2012, 6, 8, 10, 31, 58, 493905, tzinfo=<UTC>)
[tz for tz in pytz.common_timezones_set if now.astimezone(pytz.timezone(tz)).hour == 9]
# ['Atlantic/Cape_Verde']
[tz for tz in pytz.common_timezones_set if now.astimezone(pytz.timezone(tz)).hour == 12]
# returns a list of 45 timezones, 'Europe/Oslo' included
是的,就是這樣! –
太棒了!正是我想要的。 – aqs