Установка часового пояса в Python - PullRequest
45 голосов
/ 19 августа 2009

Возможно ли с помощью Python установить часовой пояс так же, как это в PHP:

date_default_timezone_set("Europe/London");
$Year = date('y');
$Month = date('m');
$Day = date('d');
$Hour = date('H');
$Minute = date('i');

Я не могу установить другие модули и т. Д., Поскольку я использую общий веб-хостинг.

Есть идеи?

Ответы [ 3 ]

79 голосов
/ 19 августа 2009
>>> import os, time
>>> time.strftime('%X %x %Z')
'12:45:20 08/19/09 CDT'
>>> os.environ['TZ'] = 'Europe/London'
>>> time.tzset()
>>> time.strftime('%X %x %Z')
'18:45:39 08/19/09 BST'

Чтобы получить конкретные значения, которые вы перечислили:

>>> year = time.strftime('%Y')
>>> month = time.strftime('%m')
>>> day = time.strftime('%d')
>>> hour = time.strftime('%H')
>>> minute = time.strftime('%M')

См. здесь для полного списка директив. Помните, что функция strftime () всегда будет возвращать строку, а не целое число или другой тип.

4 голосов
/ 30 сентября 2017

Для окон вы можете использовать:

Запуск команд командной строки Windows на python.

import os
os.system("tzutil /s \"Central Standard Time\"");

В командной строке Windows попробуйте:

Это дает текущий часовой пояс:

Цутил / г

Это дает список часовых поясов:

Цутил / л

Это установит часовой пояс:

tzutil / s "Стандартное время Центральной Америки"

Для дальнейшего использования: http://woshub.com/how-to-set-timezone-from-command-prompt-in-windows/

1 голос
/ 07 сентября 2014

Это не ответ, но ...

Для получения datetime компонентов по отдельности лучше использовать datetime.timetuple :

time = datetime.now()
time.timetuple()
#-> time.struct_time(
#    tm_year=2014, tm_mon=9, tm_mday=7, 
#    tm_hour=2, tm_min=38, tm_sec=5, 
#    tm_wday=6, tm_yday=250, tm_isdst=-1
#)

Теперь легко получить детали:

ts = time.timetuple()
ts.tm_year
ts.tm_mon
ts.tm_mday
ts.tm_hour
ts.tm_min
ts.tm_sec
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...