Методы объекта datetime.datetime()
Last updated
Last updated
dt.date()
:
Метод dt.date()
возвращает объект с тем же годом, месяцем и днем.
dt.time()
:
Метод dt.time()
возвращает объект с тем же часом, минутой, секундой, микросекундой, при этом параметр tzinfo
будет равен None
. Смотрите также .
dt.timetz()
:
Метод dt.timetz()
возвращает объект с такими же атрибутами часа, минуты, секунды, микросекунды и tzinfo
. Смотрите также .
dt.replace(year=self.year, month=self.month, day=self.day, hour=self.hour, minute=self.minute, second=self.second, microsecond=self.microsecond, tzinfo=self.tzinfo, * fold=0)
:
dt.astimezone(tz=None)
:
Если self.tzinfo
равно tz
, а self.astimezone(tz)
равно self
: настройка даты или времени не выполняется. В противном случае результатом является местное время в часовом поясе tz
, представляющее то же время в формате UTC, что и в self
: после astz = dt.astimezone(tz)
, astz - astz.utcoffset()
будет иметь те же данные о дате и времени, что и dt - dt.utcoffset()
.
dt.utcoffset()
:
Если tzinfo=None
, то метод dt.utcoffset()
возвращает None
, иначе возвращает self.tzinfo.utcoffset(self)
или вызывает исключение, если последний не возвращает None
или объект timedelta
со значением менее одного дня.
dt.dst()
:
Если tzinfo=None
, то метод dt.dst()
возвращает None
, иначе возвращает self.tzinfo.dst(self)
или вызывает исключение, если последний не возвращает None
или объект timedelta
со значением менее одного дня.
dt.tzname()
:
Если tzinfo=None
, то метод dt.tzname()
возвращает None
, иначе возвращает self.tzinfo.tzname(self)
или вызывает исключение, если последний не возвращает None
или или строковый объект.
dt.timetuple()
:
Метод dt.timetuple()
эквивалентен:
где yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1
номер дня в текущем году, начиная с 1 для 1 января. Флаг tm_isdst
кортежа структуры устанавливается в соответствии с методом dt.dst()
:
tm_isdst
имеет значение -1, то dt.dst()
возвращает None
;
tm_isdst
имеет значение 1, то dt.dst()
возвращает ненулевое значение;
tm_isdst
имеет значение 0.
dt.utctimetuple()
:
dt.toordinal()
:
Метод dt.toordinal()
возвращает пролептический григорианский порядковый номер даты. Так же, как self.date().toordinal().
dt.timestamp()
:
Для "осведомленных" экземпляров datetime.datetime()
возвращаемое значение вычисляется как:
Примечание. Нет способа получить метку времени POSIX непосредственно из простого экземпляра datetime.datetime()
, представляющего время UTC. Если ваше приложение использует это соглашение и системный часовой пояс не установлен на UTC, вы можете получитьвременную метку POSIX, указав tzinfo=timezone.utc
:
dt.weekday()
:
dt.isoweekday()
:
dt.isocalendar()
:
Изменено в Python 3.9: результат изменился с простого кортежа на именованный кортеж.
dt.isoformat(sep='T', timespec='auto')
:
YYYY-MM-DDTHH:MM:SS.ffffff, если микросекунда не равна 0
YYYY-MM-DDTHH:MM:SS, если микросекунда равна 0
YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM[:SS[.ffffff]], если микросекунда не равна 0
YYYY-MM-DDTHH:MM:SS+HH:MM[:SS[.ffffff]], если микросекунда равна 0
Examples:
Необязательный аргумент sep
- по умолчанию 'T', представляет собой односимвольный разделитель, помещенный между датой и временем.
Необязательный аргумент timespec
указывает количество дополнительных компонентов времени для включения, по умолчанию "auto".
Это может быть одно из следующих:
'auto'
: то же, что и 'seconds'
, если dt.microseconds
равна 0, в противном случае как 'milliseconds'
.
'hours'
: включает час в двузначном формате HH
.
'minutes'
: включает час и минуты в формате HH:MM
.
'seconds'
: включает час , минуты и секунды в формате HH:MM:SS
.
'milliseconds'
: включает полный вариант вывода, но усекает вторую дробную часть до миллисекунд - HH:MM:SS.sss
.
'microseconds'
: включает полный вариант вывода - HH:MM:SS.ffffff
.
Примечание. Компоненты исключенного времени будут отброшены, а не округлены.
dt.__str__()
:
dt.ctime()
:
dt.strftime(format)
:
Метод dt.replace()
возвращает новый объект с теми же атрибутами, за исключением тех атрибутов, которым даны новые значения в зависимости от того, какие указаны.
Обратите внимание, что можно указать tzinfo=None
для объекта datetime.datetime()
из "осведомленного" без преобразования данных даты и времени.
Метод dt.astimezone()
возвращает новый объект с новым атрибутом tzinfo
, скорректировав данные даты и времени таким образом, чтобы результатом было то же время UTC, но по местному времени tz
.
Если указан аргумент tz
, то он должен быть экземпляром подкласса , а его методы tzinfo.utcoffset()
и tzinfo.dst()
не должны возвращать None
. Если self
- "наивно", то предполагается, что оно представляет время в часовом поясе системы.
Если вызывается без аргументов или с tz=None
, то системный часовой пояс местного времени принимается за целевой часовой пояс. Атрибут .tzinfo
преобразованного экземпляра datetime.datetime()
будет установлен на экземпляр с именем зоны и смещением, полученными из ОС.
Если вы просто хотите прикрепить объект часового пояса tz
к datetime.datetime()
без настройки даты и времени, используйте .
Если вы просто хотите удалить объект часового пояса из "осведомленного" datetime.datetime()
без преобразования даты и времени, используйте .
Обратите внимание, что метод tzinfo.fromutc()
по умолчанию может быть переопределен в подклассе tzinfo
, чтобы повлиять на результат, возвращаемый методом . действует так, что бы игнорировать ошибки datetime.astimezone()
:
Метод dt.timetuple()
возвращает структуры времени , например такой же как возвращает .
Если экземпляр dt
- "наивен", то метод dt.utctimetuple()
возвратит же самое, что и , за исключением того, что элемент структуры tm_isdst
принудительно устанавливается в 0 независимо от того, что возвращает . DST никогда не действует в течение времени UTC.
Если dt
- "осведомленный", то dt
нормализуется к времени UTC, вычитая и возвращается для нормализованного времени. Значение tm_isdst=0
. Обратите внимание, что может быть вызвана, если атрибут даты и времени dt.year
равняется datetime.MINYEAR
или datetime.MAXYEAR
, а корректировки UTC превышают границу года.
Предупреждение. Поскольку "наивные" объекты обрабатываются многими методами как локальное время, то предпочтительно использовать datetime.datetime()
для представления времени в UTC. В результате использование конструктора может привести к ошибочным результатам. Если у вас есть "наивный" объект datetime.datetime()
представляющий UTC, то используйте , чтобы сообщить, в какой момент вы можете использовать .
Метод dt.timestamp()
возвращает метку времени POSIX, соответствующую экземпляру datetime.datetime()
. Возвращаемое значение - это , аналогичное тому, которое возвращает .
Предполагается, что "наивные" экземпляры datetime.datetime()
представляют местное время, и для выполнения преобразования используется метод платформы C mktime()
. Поскольку datetime.datetime()
поддерживает более широкий диапазон значений, чем mktime()
на многих платформах, этот метод может вызвать для времен, которые уже прошли или будут в будущем.
Метод dt.weekday()
возвращает день недели в виде , где понедельник = 0, а воскресенье = 6. То же, что self.date().weekday()
.
Смотрите также метод .
Метод dt.isoweekday()
возвращает день недели в виде , где понедельник = 1, а воскресенье = 7. То же, что self.date().isoweekday()
.
Смотрите также методы и .
Метод dt.isocalendar()
возвращает с тремя компонентами: год year
, неделя week
и день недели weekday
. Так же, как self.date().isocalendar()
.
Метод dt.isoformat()
возвращает , представляющую дату и время в формате ISO 8601:
Если не возвращает None
, добавляется строка, дающая смещение UTC:
Будет вызвано , если аргумент timespec
будет недопустимым.
Для экземпляра dt
справедливо утверждение: эквивалентно вызову .
Метод dt.ctime()
возвращает , представляющую дату и время:
Выходная строка не будет включать информацию о часовом поясе, независимо от того, является ли ввод .
Вызов метода эквивалентен:
Метод dt.strftime()
возвращает , представляющую дату и время, управляемую явной строкой формата.
Полный список директив форматирования смотрите в разделе .