Yerel saat dilimi için Olson TZ adını almak?
Nasıl Olson timezone name (Australia/Sydney
) değer C tarafından verilen karşılık localtime
arayayım mı?
Bu değer /etc/localtime
, symlinking veya zamanla ilgili sistem yapılandırma dosyaları TIMEZONE
değişken ayarı TZ
) geçersiz kılınır.
CEVAP
Bence en iyi bahis git thru tüm pytz dilimleri ve kontrol eden bir kibrit yerel saat dilimi, her zaman dilimi pytz nesnesi içeren bilgi hakkında utcoffset ve tzname gibi CDT, EST, aynı bilgi hakkında yerel zaman elde edilebilir time.timezone/altzone
time.tzname
ve bence o kadar düzgün maç yerel saat diliminde pytz veritabanı örneğin
import time
import pytz
import datetime
local_names = []
if time.daylight:
local_offset = time.altzone
localtz = time.tzname[1]
else:
local_offset = time.timezone
localtz = time.tzname[0]
local_offset = datetime.timedelta(seconds=-local_offset)
for name in pytz.all_timezones:
timezone = pytz.timezone(name)
if not hasattr(timezone, '_tzinfos'):
continue#skip, if some timezone doesn't have info
# go thru tzinfo and see if short name like EDT and offset matches
for (utcoffset, daylight, tzname), _ in timezone._tzinfos.iteritems():
if utcoffset == local_offset and tzname == localtz:
local_names.append(name)
print local_names
çıkış:
['America/Atikokan', 'America/Bahia_Banderas', 'America/Bahia_Banderas', 'America/Belize', 'America/Cambridge_Bay', 'America/Cancun', 'Amerika/Chicago', 'America/Chihuahua', 'America/Coral_Harbour', 'America/Costa_Rica', 'America/El_Salvador', 'America/Fort_Wayne', 'America/Guatemala', 'America/Indiana/Indianapolis', 'America/Indiana/Knox', 'America/Indiana/Marengo', 'America/Indiana/Marengo', 'America/Indiana/Petersburg', 'America/Indiana Tell_City/', 'America/Indiana/Vevay', 'America/Indiana/Vincennes', 'America/Indiana/Winamac', 'Amerika/Indianapolis', 'America/Iqaluit', 'America/Kentucky/Louisville', 'America/Kentucky/Louisville', 'America/Kentucky/Monticello', 'America/Knox_İN', 'America/Louisville', 'America/Louisville', 'America/Managua', 'America/Matamoros', 'America/Menominee', 'America/Merida', 'Amerika Mexico_City/', 'America/Monterrey', 'America/North_Dakota/Beulah', '/North_Dakota/Merkezi Amerika', 'America/North_Dakota/New_Salem', 'America/Ojinaga', 'America/Pangnirtung', 'America/Rainy_River', 'America/Rankin_İnlet', 'America/Resolute', 'America/Resolute', 'America/Tegucigalpa', 'America/Winnipeg', 'CST6CDT', 'Kanada/Merkez', 'Meksika/Genel', 'ABD/Merkez', 'ABD/Doğu-Indiana', 'ABD/Indiana-Starke']
Üretimde böyle bir eşleme önceden oluşturun ve kaydedin her zaman dolaşmak yerine.
Zaman dilimini değiştirdikten sonra komut test:
$ ihracat='Avustralya/Sydney' . TZ ^br> $ python get_tz_names.py
['Antarktika/Dicle', 'Avustralya/ACT', 'Avustralya/Brisbane', 'Avustralya/Canberra', 'Australia/Currie', 'Avustralya/Hobart', 'Australia/Lindeman', 'Avustralya/Melbourne', 'Avustralya/NSW', 'Avustralya/Queensland', 'Avustralya/Sydney', 'Avustralya/Tazmanya', 'Avustralya/Victoria']
Python nasıl bir yol uzantısı olmadan ...
Nasıl tam yol kullanarak bir JavaScrip...
nasıl işlev adını almak için PHP bir i...
Nasıl uzantısı olmadan dosya adını alm...
Nasıl yerel saat UTC dönüştürmek için ...