Документация Python неофициальный перевод

time.md

350 строк · 35.2 КБ · обычная страница · сырой текст · скачать

1> **Источник:** https://python-all.ru/3.2/library/time.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# 15.3. [`time`](https://python-all.ru/3.2/library/time.html#module-time) – Доступ ко времени и преобразования89Этот модуль предоставляет различные функции для работы со временем. За дополнительными возможностями обращайтесь также к модулям [`datetime`](https://python-all.ru/3.2/library/datetime.html#module-datetime) и [`calendar`](https://python-all.ru/3.2/library/calendar.html#module-calendar).1011Хотя этот модуль доступен всегда, не все функции доступны на всех платформах. Большинство функций, определённых в этом модуле, вызывают одноимённые функции из библиотеки C платформы. Иногда может быть полезно обратиться к документации платформы, так как семантика этих функций различается в разных системах.1213Необходимо пояснить некоторую терминологию и соглашения.1415- *Эпоха* – это точка отсчёта времени. 1 января этого года в 0 часов «время с начала эпохи» равно нулю. Для Unix эпоха – 1970 год. Чтобы узнать, что такое эпоха, посмотрите на `gmtime(0)`.1617- Функции этого модуля могут не поддерживать даты и время до эпохи или далёкого будущего. Граница в будущем определяется библиотекой C; для 32-битных систем она обычно приходится на 2038 год.1819- **Проблемы 2000 года (Y2K)**: Python зависит от системной библиотеки C, в которой обычно нет проблем с 2000 годом, поскольку все даты и время внутренне представлены как секунды с начала эпохи. Функция [`strptime()`](https://python-all.ru/3.2/library/time.html#time.strptime) может разбирать двузначные годы при указании кода формата `%y`. При разборе двузначных лет они преобразуются в соответствии со стандартами POSIX и ISO C: значения 69–99 соответствуют 1969–1999, а значения 0–68 – 2000–2068.2021  Для обратной совместимости годы, содержащие менее 4 цифр, специальным образом обрабатываются функциями [`asctime()`](https://python-all.ru/3.2/library/time.html#time.asctime), [`mktime()`](https://python-all.ru/3.2/library/time.html#time.mktime) и [`strftime()`](https://python-all.ru/3.2/library/time.html#time.strftime), которые работают с кортежем из 9 элементов или значениями [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time). Если год (первое значение в 9-кортеже) указан с менее чем 4 цифрами, его интерпретация зависит от значения переменной `accept2dyear`.2223  Если `accept2dyear` имеет значение true (по умолчанию), то включается следующее поведение обратной совместимости:2425  > - для двузначного года век определяется по правилам POSIX для формата strptime `%y`. При таком определении века выводится предупреждение об устаревании.26  > - для трехзначного или отрицательного года возникает исключение [`ValueError`](https://python-all.ru/3.2/library/exceptions.html#ValueError).2728  Если `accept2dyear` имеет значение false (установлено программой или в результате присвоения непустого значения переменной окружения `PYTHONY2K`), все значения года интерпретируются как указано.2930- UTC – это Всемирное координированное время (ранее известно как среднее время по Гринвичу, или GMT). Аббревиатура UTC – не ошибка, а компромисс между английским и французским языками.3132- DST – это летнее время, корректировка часового пояса (обычно на один час) в течение части года. Правила DST магические (определяются местным законодательством) и могут меняться от года к году. Библиотека C содержит таблицу с местными правилами (часто она считывается из системного файла для гибкости) и является единственным источником Истинной Мудрости в этом отношении.33- Точность различных функций реального времени может быть ниже, чем предполагают единицы, в которых выражается их значение или аргумент. Например, на большинстве Unix-систем тактовая частота составляет всего 50 или 100 тиков в секунду.34- С другой стороны, точность [`time()`](https://python-all.ru/3.2/library/time.html#time.time) и [`sleep()`](https://python-all.ru/3.2/library/time.html#time.sleep) выше, чем у их Unix-аналогов: время представляется числами с плавающей запятой, [`time()`](https://python-all.ru/3.2/library/time.html#time.time) возвращает наиболее точное доступное время (используя Unix `gettimeofday()`, где это возможно), а [`sleep()`](https://python-all.ru/3.2/library/time.html#time.sleep) принимает время с ненулевой дробной частью (для этого используется Unix `select()`, где это возможно).35- Значение времени, возвращаемое функциями [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime), [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime) и [`strptime()`](https://python-all.ru/3.2/library/time.html#time.strptime) и принимаемое функциями [`asctime()`](https://python-all.ru/3.2/library/time.html#time.asctime), [`mktime()`](https://python-all.ru/3.2/library/time.html#time.mktime) и [`strftime()`](https://python-all.ru/3.2/library/time.html#time.strftime), представляет собой последовательность из 9 целых чисел. Возвращаемые значения [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime), [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime) и [`strptime()`](https://python-all.ru/3.2/library/time.html#time.strptime) также предоставляют имена атрибутов для отдельных полей.3637  Описание этих объектов см. в [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time).38- Используйте следующие функции для преобразования между представлениями времени:3940  | Из | В | Использовать |41  | --- | --- | --- |42  | секунды с начала эпохи | [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) в UTC | [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime) |43  | секунды с начала эпохи | [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) в местном времени | [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime) |44  | [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) в UTC | секунды с начала эпохи | [`calendar.timegm()`](https://python-all.ru/3.2/library/calendar.html#calendar.timegm) |45  | [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) в местном времени | секунды с начала эпохи | [`mktime()`](https://python-all.ru/3.2/library/time.html#time.mktime) |4647Модуль определяет следующие функции и элементы данных:4849#### `time.accept2dyear`5051Логическое значение, указывающее, будут ли двузначные годы отображаться в диапазон 1969–2068 функциями [`asctime()`](https://python-all.ru/3.2/library/time.html#time.asctime), [`mktime()`](https://python-all.ru/3.2/library/time.html#time.mktime) и [`strftime()`](https://python-all.ru/3.2/library/time.html#time.strftime). По умолчанию имеет значение true, но будет установлено в false, если переменная окружения [`PYTHONY2K`](https://python-all.ru/3.2/using/cmdline.html#envvar-PYTHONY2K) получила непустое строковое значение. Также может быть изменено во время выполнения.5253Устарело с версии 3.2: Отображение двузначных годов функциями [`asctime()`](https://python-all.ru/3.2/library/time.html#time.asctime), [`mktime()`](https://python-all.ru/3.2/library/time.html#time.mktime) и [`strftime()`](https://python-all.ru/3.2/library/time.html#time.strftime) в диапазон 1969–2068 устарело. Программам, которым нужно обрабатывать двузначные годы, следует использовать код `%y` из функции [`strptime()`](https://python-all.ru/3.2/library/time.html#time.strptime) или самостоятельно преобразовывать двузначные годовые значения в четырехзначные.5455#### `time.altzone`5657Смещение местного часового пояса с учётом летнего времени, в секундах к западу от UTC, если оно определено. Отрицательное, если местный часовой пояс с летним временем находится к востоку от UTC (как в Западной Европе, включая Великобританию). Используйте это только если `daylight` не равен нулю.5859#### `time.asctime([t])`6061Преобразует кортеж или [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time), представляющий время и возвращённый функциями [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime) или [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime), в строку следующего вида: `'Sun Jun 20 23:21:05 1993'`. Если *t* не указан, используется текущее время, возвращаемое [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime). Информация о локали не используется функцией [`asctime()`](https://python-all.ru/3.2/library/time.html#time.asctime).6263> **Примечание**64>65> В отличие от одноименной функции в C, в конце строки нет символа новой строки.6667#### `time.clock()`6869В Unix возвращает текущее процессорное время в виде числа с плавающей запятой, выраженного в секундах. Точность и, по сути, само определение понятия «процессорное время» зависит от одноимённой функции C, но в любом случае эту функцию следует использовать для бенчмаркинга Python или замера времени алгоритмов.7071В Windows эта функция возвращает количество секунд реального времени, прошедших с первого вызова этой функции, в виде числа с плавающей запятой, на основе функции Win32 `QueryPerformanceCounter()`. Разрешение обычно лучше одной микросекунды.7273#### `time.ctime([secs])`7475Convert a time expressed in seconds since the epoch to a string representing local time. If *secs* is not provided or [`None`](https://python-all.ru/3.2/library/constants.html#None), the current time as returned by [`time()`](https://python-all.ru/3.2/library/time.html#time.time) is used. `ctime(secs)` is equivalent to `asctime(localtime(secs))`. Locale information is not used by [`ctime()`](https://python-all.ru/3.2/library/time.html#time.ctime).7677#### `time.daylight`7879Не равно нулю, если часовой пояс с переходом на летнее время (DST) определён.8081#### `time.gmtime([secs])`8283Convert a time expressed in seconds since the epoch to a [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) in UTC in which the dst flag is always zero. If *secs* is not provided or [`None`](https://python-all.ru/3.2/library/constants.html#None), the current time as returned by [`time()`](https://python-all.ru/3.2/library/time.html#time.time) is used. Fractions of a second are ignored. See above for a description of the [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) object. See [`calendar.timegm()`](https://python-all.ru/3.2/library/calendar.html#calendar.timegm) for the inverse of this function.8485#### `time.localtime([secs])`8687Like [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime) but converts to local time. If *secs* is not provided or [`None`](https://python-all.ru/3.2/library/constants.html#None), the current time as returned by [`time()`](https://python-all.ru/3.2/library/time.html#time.time) is used. The dst flag is set to `1` when DST applies to the given time.8889#### `time.mktime(t)`9091This is the inverse function of [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime). Its argument is the [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) or full 9-tuple (since the dst flag is needed; use `-1` as the dst flag if it is unknown) which expresses the time in *local* time, not UTC. It returns a floating point number, for compatibility with [`time()`](https://python-all.ru/3.2/library/time.html#time.time). If the input value cannot be represented as a valid time, either [`OverflowError`](https://python-all.ru/3.2/library/exceptions.html#OverflowError) or [`ValueError`](https://python-all.ru/3.2/library/exceptions.html#ValueError) will be raised (which depends on whether the invalid value is caught by Python or the underlying C libraries). The earliest date for which it can generate a time is platform-dependent.9293#### `time.sleep(secs)`9495Приостанавливает выполнение на указанное количество секунд. Аргумент может быть числом с плавающей запятой для более точного указания времени ожидания. Фактическое время приостановки может быть меньше запрошенного, так как любой перехваченный сигнал завершит выполнение [`sleep()`](https://python-all.ru/3.2/library/time.html#time.sleep) после выполнения подпрограммы обработки этого сигнала. Кроме того, время приостановки может быть больше запрошенного на произвольную величину из-за планирования других активностей в системе.9697#### `time.strftime(format[, t])`9899Convert a tuple or [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time) representing a time as returned by [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime) or [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime) to a string as specified by the *format* argument. If *t* is not provided, the current time as returned by [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime) is used. *format* must be a string. [`ValueError`](https://python-all.ru/3.2/library/exceptions.html#ValueError) is raised if any field in *t* is outside of the allowed range.1001010 является допустимым аргументом для любой позиции в кортеже времени; если обычно это недопустимо, значение принудительно приводится к корректному.102103The following directives can be embedded in the *format* string. They are shown without the optional field width and precision specification, and are replaced by the indicated characters in the [`strftime()`](https://python-all.ru/3.2/library/time.html#time.strftime) result:104105| Директива | Значение | Примечания |106| --- | --- | --- |107| `%a` | Сокращённое название дня недели в соответствии с локалью. |  |108| `%A` | Полное название дня недели в соответствии с локалью. |  |109| `%b` | Сокращённое название месяца в соответствии с локалью. |  |110| `%B` | Полное название месяца в соответствии с локалью. |  |111| `%c` | Представление даты и времени, соответствующее локали. |  |112| `%d` | День месяца в виде десятичного числа \[01,31\]. |  |113| `%H` | Час (24-часовой формат) в виде десятичного числа \[00,23\]. |  |114| `%I` | Час (12-часовой формат) в виде десятичного числа \[01,12\]. |  |115| `%j` | День года в виде десятичного числа \[001,366\]. |  |116| `%m` | Месяц в виде десятичного числа \[01,12\]. |  |117| `%M` | Минута в виде десятичного числа \[00,59\]. |  |118| `%p` | Эквивалент AM или PM в соответствии с локалью. | (1) |119| `%S` | Секунда в виде десятичного числа \[00,61\]. | (2) |120| `%U` | Номер недели года (воскресенье – первый день недели) в виде десятичного числа \[00,53\]. Все дни нового года, предшествующие первому воскресенью, считаются неделей 0. | (3) |121| `%w` | День недели в виде десятичного числа \[0(воскресенье),6\]. |  |122| `%W` | Номер недели года (понедельник – первый день недели) в виде десятичного числа \[00,53\]. Все дни нового года, предшествующие первому понедельнику, считаются неделей 0. | (3) |123| `%x` | Представление даты, соответствующее локали. |  |124| `%X` | Представление времени, соответствующее локали. |  |125| `%y` | Год без века в виде десятичного числа \[00,99\]. |  |126| `%Y` | Год с веком в виде десятичного числа. | (4) |127| `%Z` | Название часового пояса (ни одного символа, если часовой пояс не задан). |  |128| `%%` | Литеральный символ `'%'`. |  |129130Примечания:1311321. При использовании с функцией [`strptime()`](https://python-all.ru/3.2/library/time.html#time.strptime) директива `%p` влияет только на поле часа на выходе, если директива `%I` используется для разбора часа.1332. Диапазон на самом деле от `0` до `61`; значение `60` допустимо в метках времени, представляющих високосные секунды, а значение `61` поддерживается по историческим причинам.1343. При использовании с функцией [`strptime()`](https://python-all.ru/3.2/library/time.html#time.strptime), `%U` и `%W` используются в вычислениях только если указаны день недели и год.1354. Результат зависит от значения переменной `time.accept2dyear`. Подробнее см. [*проблемы года 2000 (Y2K)*](https://python-all.ru/3.2/library/time.html#time-y2kissues).136137Вот пример формата дат, совместимого с указанным в [**RFC 2822**](https://python-all.ru/3.2/library/time.html) стандарте интернет-почты. [\[1\]](https://python-all.ru/3.2/library/time.html#id2)138139```python140>>> from time import gmtime, strftime141>>> strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime())142'Thu, 28 Jun 2001 14:17:15 +0000'143```144145На некоторых платформах могут поддерживаться дополнительные директивы, но только перечисленные здесь имеют смысл, стандартизированный ANSI C.146147На некоторых платформах сразу после начального `'%'` директивы может следовать (в указанном порядке) необязательная спецификация ширины поля и точности; это также непереносимо. Ширина поля обычно равна 2, за исключением `%j`, где она равна 3.148149#### `time.strptime(string[, format])`150151Разбирает строку, представляющую время, в соответствии с форматом. Возвращаемое значение – [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time), как возвращаемое [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime) или [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime).152153Параметр *format* использует те же директивы, что и [`strftime()`](https://python-all.ru/3.2/library/time.html#time.strftime); по умолчанию он равен `"%a %b %d %H:%M:%S %Y"`, что соответствует формату, возвращаемому [`ctime()`](https://python-all.ru/3.2/library/time.html#time.ctime). Если *string* не удаётся разобрать в соответствии с *format*, или если после разбора остались лишние данные, возбуждается [`ValueError`](https://python-all.ru/3.2/library/exceptions.html#ValueError). Значения по умолчанию, используемые для заполнения недостающих данных, когда более точные значения не могут быть выведены, равны `(1900, 1, 1, 0, 0, 0, 0, 1, -1)`. Оба аргумента *string* и *format* должны быть строками.154155Например:156157```python158>>> import time159>>> time.strptime("30 Nov 00", "%d %b %y")   160time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0,161                 tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)162```163164Поддержка директивы `%Z` основана на значениях, хранящихся в `tzname` и на том, истинно ли `daylight`. Из-за этого она зависит от платформы, за исключением распознавания UTC и GMT, которые всегда известны (и считаются часовыми поясами без перехода на летнее время).165166Поддерживаются только директивы, указанные в документации. Поскольку `strftime()` реализуется для каждой платформы отдельно, он иногда может предоставлять больше директив, чем перечислено. Но `strptime()` не зависит от платформы и поэтому не обязательно поддерживает все доступные директивы, которые не задокументированы как поддерживаемые.167168#### `class time.struct_time`169170Тип последовательности значений времени, возвращаемой [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime), [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime) и [`strptime()`](https://python-all.ru/3.2/library/time.html#time.strptime). Это объект с интерфейсом [*именованного кортежа*](https://python-all.ru/3.2/glossary.html#term-named-tuple): значения могут быть получены по индексу и по имени атрибута. Присутствуют следующие значения:171172| Индекс | Атрибут | Значения |173| --- | --- | --- |174| 0 | `tm_year` | (например, 1993) |175| 1 | `tm_mon` | диапазон \[1, 12\] |176| 2 | `tm_mday` | диапазон \[1, 31\] |177| 3 | `tm_hour` | диапазон \[0, 23\] |178| 4 | `tm_min` | диапазон \[0, 59\] |179| 5 | `tm_sec` | range \[0, 61\]; see **(2)** in [`strftime()`](https://python-all.ru/3.2/library/time.html#time.strftime) description |180| 6 | `tm_wday` | диапазон \[0, 6\], понедельник – 0 |181| 7 | `tm_yday` | диапазон \[1, 366\] |182| 8 | `tm_isdst` | 0, 1 или -1; см. ниже |183184Обратите внимание: в отличие от структуры C, значение месяца лежит в диапазоне \[1, 12\], а не \[0, 11\]. Значение года обрабатывается, как описано выше в разделе [*год 2000 (Y2K) проблемы*](https://python-all.ru/3.2/library/time.html#time-y2kissues) above. Аргумент `-1` в качестве флага летнего времени, передаваемый в [`mktime()`](https://python-all.ru/3.2/library/time.html#time.mktime), обычно приводит к правильному заполнению состояния летнего времени.185186When a tuple with an incorrect length is passed to a function expecting a [`struct_time`](https://python-all.ru/3.2/library/time.html#time.struct_time), or having elements of the wrong type, a [`TypeError`](https://python-all.ru/3.2/library/exceptions.html#TypeError) is raised.187188#### `time.time()`189190Возвращает время в секундах с начала эпохи в виде числа с плавающей запятой. Обратите внимание, что хотя время всегда возвращается в виде числа с плавающей запятой, не все системы обеспечивают точность времени лучше 1 секунды. Хотя эта функция обычно возвращает неубывающие значения, она может вернуть значение меньше предыдущего вызова, если системные часы были переведены назад между двумя вызовами.191192#### `time.timezone`193194Смещение местного часового пояса (без DST) в секундах к западу от UTC (отрицательное в большей части Западной Европы, положительное в США, нулевое в Великобритании).195196#### `time.tzname`197198Кортеж из двух строк: первая – название местного часового пояса без DST, вторая – название местного часового пояса с DST. Если часовой пояс с DST не определён, вторая строка не должна использоваться.199200#### `time.tzset()`201202Resets the time conversion rules used by the library routines. The environment variable `TZ` specifies how this is done.203204Доступность: Unix.205206> **Примечание**207>208> Although in many cases, changing the `TZ` environment variable may affect the output of functions like [`localtime()`](https://python-all.ru/3.2/library/time.html#time.localtime) without calling [`tzset()`](https://python-all.ru/3.2/library/time.html#time.tzset), this behavior should not be relied on.209>210> The `TZ` environment variable should contain no whitespace.211212The standard format of the `TZ` environment variable is (whitespace added for clarity):213214```python215std offset [dst [offset [,start[/time], end[/time]]]]216```217218Где компоненты имеют следующее значение:219220**`std` and `dst`**221222Три или более буквенно-цифровых символа, обозначающие аббревиатуры часовых поясов. Они будут переданы в time.tzname.223224**`offset`**225226The offset has the form:227228`± hh[:mm[:ss]]`229230. This indicates the value added the local time to arrive at UTC. If preceded by a ‘-‘, the timezone is east of the Prime Meridian; otherwise, it is west. If no offset follows dst, summer time is assumed to be one hour ahead of standard time.231232**`start[/time], end[/time]`**233234Указывает, когда переходить на летнее время и обратно. Формат дат начала и окончания – один из следующих:235236**`Jn`**237238Юлианский день239240*n*241242(1 \<=243244*n*245246\<= 365). Високосные дни не учитываются, поэтому во все годы 28 февраля – день 59, а 1 марта – день 60.247248**`n`**249250Юлианский день с нулевым отсчетом (0 \<=251252*n*253254\<= 365). Високосные дни учитываются, и можно указать 29 февраля.255256**`Mm.n.d`**257258*d*259260-й день (0 \<=261262*d*263264\<= 6) или неделя265266*n*267268месяца269270*m*271272года (1 \<=273274*n*275276\<= 5, 1 \<=277278*m*279280\<= 12, где неделя 5 означает «последний281282*d*283284-й день в месяце285286*m*287288», который может приходиться на четвертую или пятую неделю). Неделя 1 – это первая неделя, в которой встречается289290*d*291292-й день. День ноль – воскресенье.293294`time` has the same format as `offset` except that no leading sign (‘-‘ or ‘+’) is allowed. The default, if time is not given, is 02:00:00.295296```python297>>> os.environ['TZ'] = 'EST+05EDT,M4.1.0,M10.5.0'298>>> time.tzset()299>>> time.strftime('%X %x %Z')300'02:07:36 05/08/03 EDT'301>>> os.environ['TZ'] = 'AEST-10AEDT-11,M10.5.0,M3.5.0'302>>> time.tzset()303>>> time.strftime('%X %x %Z')304'16:08:12 05/08/03 AEST'305```306307На многих системах Unix (включая \*BSD, Linux, Solaris и Darwin) удобнее использовать системную базу данных zoneinfo (*tzfile(5)*) для указания правил часового пояса. Для этого задайте переменную окружения `TZ`, указав путь к требуемому файлу данных часового пояса относительно корня системной базы данных часовых поясов 'zoneinfo', которая обычно находится в `/usr/share/zoneinfo`. Например, `'US/Eastern'`, `'Australia/Melbourne'`, `'Egypt'` или `'Europe/Amsterdam'`.308309```python310>>> os.environ['TZ'] = 'US/Eastern'311>>> time.tzset()312>>> time.tzname313('EST', 'EDT')314>>> os.environ['TZ'] = 'Egypt'315>>> time.tzset()316>>> time.tzname317('EET', 'EEST')318```319320> **См. также**321>322> **Модуль [`datetime`](https://python-all.ru/3.2/library/datetime.html#module-datetime)**323>324> Более объектно-ориентированный интерфейс для работы с датами и временем.325>326> **Модуль [`locale`](https://python-all.ru/3.2/library/locale.html#module-locale)**327>328> Службы интернационализации. Настройки локали могут влиять на возвращаемые значения для некоторых функций модуля329>330> [`time`](https://python-all.ru/3.2/library/time.html#module-time)331>332> .333>334> **Модуль [`calendar`](https://python-all.ru/3.2/library/calendar.html#module-calendar)**335>336> Общие календарные функции.337>338> `timegm()`339>340> является обратной по отношению к341>342> [`gmtime()`](https://python-all.ru/3.2/library/time.html#time.gmtime)343>344> из этого модуля.345346Сноски347348| [\[1\]](https://python-all.ru/3.2/library/time.html#id1) | Использование `%Z` теперь считается устаревшим, но управляющая последовательность `%z`, которая раскрывается в предпочтительное смещение в часах/минутах, поддерживается не всеми библиотеками ANSI C. Кроме того, строгое прочтение оригинального стандарта [**RFC 822**](https://python-all.ru/3.2/library/time.html) 1982 года требует двузначного года (%y, а не %Y), но на практике перешли на четырёхзначные годы задолго до 2000 года. После этого [**RFC 822**](https://python-all.ru/3.2/library/time.html) устарел, и четырёхзначный год был сначала рекомендован [**RFC 1123**](https://python-all.ru/3.2/library/time.html), а затем закреплён в [**RFC 2822**](https://python-all.ru/3.2/library/time.html). |349| --- | --- |350