Класс date() модуля datetime в Python.

Варианты создания объекта даты datetime.date.

Синтаксис:
import datetime
date = datetime.date(year, month, day)
Параметры:

Все аргументы обязательны. Аргументы должны быть целыми числами.

  • year — год в пределах datetime.MINYEAR <= year <= datetime.MAXYEAR,
  • month — месяц в пределах 1 <= month <= 12,
  • day — день в пределах 1 <= day <= n, n — количество дней в данном месяце и году.

Если задан аргумент вне этих диапазонов, вызывается исключение ValueError.

Возвращаемое значение:
  • объект даты date().
Описание:

Класс date() модуля datetime — объект даты, который представляет дату — год, месяц и день в идеализированном календаре, текущий григорианский календарь бесконечно расширяется в обоих направлениях.

Атрибуты экземпляра datetime.date (только для чтения):

  • date.year — возвращает год в диапазоне, указанном выше,
  • date.month — возвращает месяц в диапазоне, указанном выше,
  • date.day — возвращает день в диапазоне, указанном выше.
>>> import datetime
>>> date = datetime.date(2020, 7, 14)
>>> date
# datetime.date(2020, 7, 14)
>>> date.day
# 14
>>> date.month
# 7
>>> date.year
# 2020

Создание объекта

datetime.date другими способами:
datetime.date.today():

Подкласс datetime.date.today() возвращает текущую местную дату, что эквивалентно вызову выражения

datetime.date.fromtimestamp(time.time()).

>>> import datetime
>>> datetime.date.today()
# datetime.date(2020, 5, 5)
datetime.date.fromtimestamp(timestamp):

Подкласс datetime. date.fromtimestamp() возвращает локальную дату, соответствующую метке времени POSIX, например возвращается функцией time.time().

Если отметка времени выходит за пределы диапазона значений, поддерживаемых функцией localtime() платформы, то это может вызвать исключение OverflowError

, а при сбое системной localtime() — исключение OSError. Отметка времени обычно ограничивается годами с 1970 по 2038 год.

Обратите внимание, что в системах без POSIX, которые включают в себя понятие високосных секунд в своем значении временной метки, високосные секунды игнорируются функцией fromtimestamp().

>>> import datetime, time
>>> sec = time.time()
>>> sec
# 1588657177.4476178
>>> datetime.date.fromtimestamp(sec)
# datetime.date(2020, 5, 5)
datetime.date.fromisoformat(date_string):

Подкласс datetime.date.fromisoformat() возвращает дату, соответствующую строке date_string в формате, заданным в любом допустимом формате ISO 8601, кроме порядковых дат (например,

YYYY-DDD):

Изменено в Python 3. 11: ранее этот метод поддерживал только формат YYYY-MM-DD.

>>> from datetime import date
>>> date.fromisoformat('2019-12-04')
# datetime.date(2019, 12, 4)
>>> date.fromisoformat('20191204')
# datetime.date(2019, 12, 4)
>>> date.fromisoformat('2021-W01-1')
# datetime.date(2021, 1, 4)
datetime.date.fromisocalendar(year, week, day):

Подкласс datetime.date.fromisocalendar() возвращает дату, соответствующую календарной дате ISO, указанной по году year, неделе week и дню day.

Это обратное значение возвращаемое методом date.isocalendar().

Поддерживаемые операции:

ОперацияРезультатЗаметка
date2 = date1 + timedelta‘date2’ это ‘timedelta.days’ дней, удаленных из ‘date1’.(1)
date2 = date1 — timedeltaВычисляет ‘date2’ так, что ‘date2 + timedelta == date1’.(2)
timedelta = date1 — date2(3)
date1 ‘date1’ считается меньше чем ‘date2’, когда ‘date1’ предшествует ‘date2’ во времени.(4)

Заметки:

  1. date2 перемещается вперед во времени, если timedelta.days > 0, или назад, если timedelta.days < 0. После операции верно равенство date2 - date1 == timedelta.days, timedelta.seconds и timedelta.microseconds игнорируются. Если date2.year будет меньше datetime.MINYEAR или больше datetime.MAXYEAR то появляется исключение OverflowError.
  2. timedelta.seconds и timedelta.microseconds игнорируются.
  3. Значение точно и не может переполниться. timedelta.seconds и timedelta.microseconds равны 0, а после справедливо равенство date2 + timedelta == date1.
  4. Другими словами, date1< date2 тогда и только тогда, когда date1.toordinal() < date2.toordinal(). Сравнение даты вызывает исключение TypeError, если один из объектов сравнения не является объектом даты. Если один из объектов сравнения имеет атрибут timetuple(), то возвращается исключение NotImplemented. Этот хук дает другим типам объектов даты возможность реализовать сравнение смешанного типа. В противном случае, когда объект даты сравнивается с объектом другого типа, то вызывается исключение TypeError.

В логическом контексте все объекты даты считаются истинными.

Модуль datetime | Python 3 для начинающих и чайников

Модуль datetime предоставляет классы для обработки времени и даты разными способами. Поддерживается и стандартный способ представления времени, однако больший упор сделан на простоту манипулирования датой, временем и их частями.

Класс datetime.date(year, month, day) — стандартная дата. Атрибуты: year, month, day. Неизменяемый объект.

Класс datetime.time(hour=0, minute=0, second=0, microsecond=0, tzinfo=None) — стандартное время, не зависит от даты. Атрибуты: hour, minute, second, microsecond, tzinfo.

Класс datetime.timedelta — разница между двумя моментами времени, с точностью до микросекунд.

Класс datetime.tzinfo — абстрактный базовый класс для информации о временной зоне (например, для учета часового пояса и / или летнего времени).

Класс datetime.datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None) — комбинация даты и времени.

Обязательные аргументы:

  • datetime.MINYEAR (1) ≤ year ≤ datetime.MAXYEAR (9999)
  • 1 ≤ month ≤ 12
  • 1 ≤ day ≤ количество дней в данном месяце и году

Необязательные:

  • 0 ≤ minute < 60
  • 0 ≤ second < 60
  • 0 ≤ microsecond < 1000000

Методы класса datetime:

datetime.today() — объект datetime из текущей даты и времени.

Работает также, как и datetime.now() со значением tz=None.

datetime.fromtimestamp(timestamp) — дата из стандартного представления времени.

datetime.fromordinal(ordinal) — дата из числа, представляющего собой количество дней, прошедших с 01.01.1970.

datetime.now(tz=None) — объект datetime из текущей даты и времени.

datetime.combine(date, time) — объект datetime из комбинации объектов date и time.

datetime.strptime(date_string, format) — преобразует строку в datetime (так же, как и функция strptime из модуля time).

datetime.strftime(format) — см. функцию strftime из модуля time.

datetime.date() — объект даты (с отсечением времени).

datetime.time() — объект времени (с отсечением даты).

datetime.replace([year[, month[, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]]]]) — возвращает новый объект datetime с изменёнными атрибутами.

datetime.timetuple() — возвращает struct_time из datetime.

datetime.toordinal() — количество дней, прошедших с 01.01.1970.

datetime.timestamp() — возвращает время в секундах с начала эпохи.

datetime.weekday() — день недели в виде числа, понедельник — 0, воскресенье — 6.

datetime.isoweekday() — день недели в виде числа, понедельник — 1, воскресенье — 7.

datetime.isocalendar() — кортеж (год в формате ISO, ISO номер недели, ISO день недели).

datetime.isoformat(sep=’T’) — красивая строка вида «YYYY-MM-DDTHH:MM:SS.mmmmmm» или, если microsecond == 0, «YYYY-MM-DDTHH:MM:SS»

datetime.ctime() — см. ctime() из модуля time.

Пример работы с классом datetime:

>>> from datetime import datetime, date, time
>>> # Using datetime.combine()
>>> d = date(2005, 7, 14)
>>> t = time(12, 30)
>>> datetime.combine(d, t)
datetime.datetime(2005, 7, 14, 12, 30)
>>> # Using datetime.now() or datetime.utcnow()
>>> datetime.
now() datetime.datetime(2007, 12, 6, 16, 29, 43, 79043) # GMT +1 >>> datetime.utcnow() datetime.datetime(2007, 12, 6, 15, 29, 43, 79060) >>> # Using datetime.strptime() >>> dt = datetime.strptime("21/11/06 16:30", "%d/%m/%y %H:%M") >>> dt datetime.datetime(2006, 11, 21, 16, 30) >>> # Using datetime.timetuple() to get tuple of all attributes >>> tt = dt.timetuple() >>> for it in tt: ... print(it) ... 2006 # year 11 # month 21 # day 16 # hour 30 # minute 0 # second 1 # weekday (0 = Monday) 325 # number of days since 1st January -1 # dst - method tzinfo.dst() returned None >>> # Date in ISO format >>> ic = dt.isocalendar() >>> for it in ic: ... print(it) ... 2006 # ISO year 47 # ISO week 2 # ISO weekday >>> # Formatting datetime >>> dt.strftime("%A, %d. %B %Y %I:%M%p") 'Tuesday, 21. November 2006 04:30PM'

Для вставки кода на Python в комментарий заключайте его в теги <pre><code>Ваш код</code></pre>

Свежее

  • Модуль csv — чтение и запись CSV файлов
  • Создаём сайт на Django, используя хорошие практики. Часть 1: создаём проект
  • Онлайн-обучение Python: сравнение популярных программ

Категории

  • Книги о Python
  • GUI (графический интерфейс пользователя)
  • Курсы Python
  • Модули
  • Новости мира Python
  • NumPy
  • Обработка данных
  • Основы программирования
  • Примеры программ
  • Типы данных в Python
  • Видео
  • Python для Web
  • Работа для Python-программистов

Полезные материалы

  • Сделай свой вклад в развитие сайта!
  • Самоучитель Python
  • Карта сайта
  • Отзывы на книги по Python
  • Реклама на сайте

Мы в соцсетях

Даты Python

❮ Предыдущая Далее ❯


Даты Python

Дата в Python не является собственным типом данных, но мы можем импортировать модуль named datetime для работы с датами как с датами объекты.

Пример

Импорт модуля datetime и отображение текущей даты:

import datetime

x = datetime. datetime.now()
print(x)

Попробуйте сами »


Вывод даты

Когда мы выполним код из приведенного выше примера, результатом будет:

Дата содержит год, месяц, день, час, минуту, секунду и микросекунду.

Модуль datetime имеет множество методов для возврата информации о дате объект.

Вот несколько примеров, вы узнаете о них позже в этом глава:

Пример

Вернуть год и название дня недели:

import datetime

x = datetime.datetime.now()

print(x.year)
print(x.strftime(«%A»))

Попробуйте сами »


Создание объектов даты

Чтобы создать дату, мы можем использовать класс datetime() (конструктор) класса модуль даты и времени .

Класс datetime() требует три параметра для создания даты: год, день месяца.

Пример

Создать объект даты:

import datetime

x = datetime. datetime(2020, 5, 17)

print(x)

Попробуйте сами »

datetime() 9Класс 0009 также принимает параметры для времени и часового пояса (час, минута, секунда, микросекунда, tzone), но они являются необязательными и имеют значение по умолчанию. значение 0 , ( Нет для часового пояса).



Метод strftime()

Объект datetime имеет метод для форматирования объектов даты в читаемые строки.

Метод называется strftime() и принимает один параметр, формат , чтобы указать формат возвращаемой строки:

Пример

Показать название месяца:

import datetime

x = datetime.datetime(2018, 6, 1)

print(x.strftime("%B"))

Попробуйте сами »

Ссылка на все коды юридических форматов:

Директива Описание Пример Попробуй
Будний день, короткая версия Ср Попробуй »
Будний день, полная версия Среда Попробуй »
% вес День недели в виде числа 0-6, 0 — воскресенье 3 Попробуй »
День месяца 01-31 31 Попробуй »
%b Название месяца, короткая версия декабрь Попробуй »
Название месяца, полная версия декабря Попробуй »
Месяц в виде числа 01-12 12 Попробуй »
Год, короткая версия, без века 18 Попробуй »
%Y Год, полная версия 2018 Попробуй »
Час 00-23 17 Попробуй »
%I Час 00-12 05 Попробуй »
утра/вечера PM Попробуй »
Минута 00-59 41 Попробуй »
%S Второй 00-59 08 Попробуй »
%f Микросекунда 000000-999999 548513 Попробуй »
%z Смещение UTC +0100
%Z Часовой пояс КСТ
%j Номер дня года 001-366 365 Попробуй »
%U Номер недели в году, воскресенье как первый день недели, 00-53 52 Попробуй »
%W Номер недели в году, понедельник как первый день недели, 00-53 52 Попробуй »
Локальная версия даты и времени Пн Дек 31 17:41:00 2018 Попробуй »
Век 20 Попробуй »
Локальная версия даты 31. 12.18 Попробуй »
Локальная версия времени 17:41:00 Попробуй »
%% Символ % % Попробуй »
%G ИСО 8601 год 2018 Попробуй »
%u ISO 8601 рабочий день (1-7) 1 Попробуй »
%V Номер недели ISO 8601 (01-53) 01 Попробуй »

❮ Предыдущий Следующий ❯


ВЫБОР ЦВЕТА



Лучшие учебники
Учебник по HTML
Учебник по CSS
Учебник по JavaScript
Учебник How To
Учебник по SQL
Учебник по Python
Учебник по W3.CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery

900 Справочник

900 Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3. CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery

Основные примеры
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery

FORUM | О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.

Copyright 1999-2023 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.

datetime — обработка значения даты/времени

Назначение: Модуль datetime включает функции и классы для анализа даты и времени, форматирования и арифметических операций.
Доступно в: 2.3 и выше

datetime содержит функции и классы для работы с датами и раз, по отдельности и вместе.

Times

Значения времени представлены классом времени. Времена имеют атрибуты для часов, минут, секунд и микросекунд. Они также могут включить информацию о часовом поясе. Аргументы для инициализации экземпляр времени являются необязательными, но значение по умолчанию равно 0. вряд ли это то, что вы хотите.

 импорт даты и времени
т = дата-время.время (1, 2, 3)
печатать т
напечатать 'час:', t.hour
напечатать 'минуты:', t.minute
напечатать 'секунду:', t.second
напечатать 'микросекунда:', t.микросекунда
напечатать 'tzinfo:', t.tzinfo
 
 $ питон datetime_time.py
01:02:03
час : 1
минута: 2
второй: 3
микросекунда: 0
информация: Нет
 

Экземпляр времени содержит только значения времени, а не связанную с ним дату со временем.

 импорт даты и времени
напечатать 'Самое раннее:', datetime. time.min
распечатать «Последние:», datetime.time.max
напечатать «Разрешение:», datetime.time.resolution
 

Атрибуты класса min и max отражают допустимый диапазон раз в течение одного дня.

 $ Python datetime_time_minmax.py
Самое раннее : 00:00:00
Последнее : 23:59:59.999999
Разрешение: 0:00:00.000001
 

Разрешение времени ограничено целыми микросекундами.

 импорт даты и времени
для m в [1, 0, 0,1, 0,6]:
    пытаться:
        напечатать '%02.1f :' % m, datetime.time(0, 0, 0, микросекунда = m)
    кроме TypeError, ошибка:
        напечатать 'ОШИБКА:', ошибиться
 

На самом деле, использование чисел с плавающей запятой в качестве аргумента в микросекундах генерирует TypeError .

 $ Python datetime_time_resolution.py
1.0 : 00:00:00.000001
0.0 : 00:00:00
0.1: ОШИБКА: ожидается целочисленный аргумент, получено число с плавающей запятой
0.6: ОШИБКА: ожидается целочисленный аргумент, получено число с плавающей запятой
 

Даты

Значения календарных дат представлены датой сорт. Экземпляры имеют атрибуты для года, месяца и дня. Это легко чтобы создать дату, представляющую сегодняшнюю дату, используя today() метод класса.

 импорт даты и времени
сегодня = дата/время.дата.сегодня()
распечатать сегодня
распечатать 'ctime:', сегодня.ctime()
распечатать 'кортеж:', today.timetuple()
напечатать 'порядковый номер:', today.toordinal()
напечатать 'Год:', сегодня.год
печатать 'Пн :', сегодня.месяц
напечатать 'День:', сегодня.день
 

В этом примере текущая дата печатается в нескольких форматах:

 $ питон datetime_date.py
21 февраля 2013 г.
ctime: Чт 21 февраля 00:00:00 2013
кортеж: time.struct_time(tm_year=2013, tm_mon=2, tm_mday=21, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=52, tm_isdst=-1)
порядковый номер: 734920
2013 год
Пн : 2
День : 21
 

Существуют также методы класса для создания экземпляров из целых чисел. (используя пролептические порядковые номера по григорианскому календарю, которые начинают отсчет с 1 января года 1) или значения метки времени POSIX.

 импорт даты и времени
время импорта
о = 733114
напечатать 'о:', о
напечатать 'fromordinal(o):', datetime.date.fromordinal(o)
т = время.время()
напечатать 't:', t
напечатать 'fromtimestamp (t):', datetime.date.fromtimestamp (t)
 

Этот пример иллюстрирует различные типы значений, используемые fromordinal() и fromtimestamp().

 $ Python datetime_date_fromordinal.py
о: 733114
от порядкового номера (о): 2008-03-13
т: 1361446545,52
Отметка времени (т): 2013-02-21
 

Как и в случае со временем, диапазон поддерживаемых значений даты может быть определяется с использованием атрибутов min и max .

 импорт даты и времени
напечатать 'Самое раннее:', datetime.date.min
распечатать «Последние:», datetime.date.max
напечатать «Разрешение:», datetime.date.resolution
 

Разрешение для дат - целые дни.

 $ Python datetime_date_minmax.py
Самое раннее: 01.01.01
Последний : 9999-12-31
Разрешение: 1 день, 0:00:00
 

Другой способ создания новых экземпляров даты использует функцию replace() метод существующей даты. Например, вы можете изменить год, оставив день и месяц в покое.

 импорт даты и времени
d1 = дата/время.дата(2008, 3, 12)
напечатать 'd1:', d1
d2 = d1.replace(год=2009)
напечатать 'd2:', d2
 
 $ Python datetime_date_replace.py
д1: 12 марта 2008 г.
д2: 2009-03-12
 

timedeltas

Использование replace() — не единственный способ вычислить будущее/прошлое даты. Вы можете использовать datetime для выполнения базовой арифметики на дату значения через класс timedelta. Вычитание дат дает timedelta, и timedelta может быть добавлен или вычитается из даты для получения другой даты. Внутренние ценности для timedelta хранятся в днях, секундах и микросекунды.

 импорт даты и времени
напечатать «микросекунды:», datetime.timedelta (микросекунды = 1)
напечатать «миллисекунды:», datetime.timedelta (миллисекунды = 1)
напечатать «секунды:», datetime.timedelta (секунды = 1)
напечатать «минуты:», datetime.timedelta (минуты = 1)
напечатать «часы:», datetime.timedelta (часы = 1)
напечатать «дни:», datetime. timedelta (дни = 1)
напечатать «недели:», datetime.timedelta (недели = 1)
 

Значения промежуточного уровня, передаваемые конструктору, преобразуются в дни, секунды и микросекунды.

 $ Python datetime_timedelta.py
микросекунды: 0:00:00.000001
миллисекунды: 0:00:00.001000
секунды: 0:00:01
минут : 0:01:00
часы : 1:00:00
дни : 1 день, 0:00:00
недели : 7 дней, 0:00:00
 

Арифметика даты

Математика даты использует стандартные арифметические операторы. Этот пример с объекты даты иллюстрируют использование объектов timedelta для вычисления новые даты и вычитание экземпляров даты для получения timedeltas (включая отрицательное значение дельты).

 импорт даты и времени
сегодня = дата/время.дата.сегодня()
печатать 'Сегодня :', сегодня
one_day = datetime.timedelta (дни = 1)
напечатать 'Один день:', one_day
вчера = сегодня - один_день
print 'Вчера:', вчера
завтра = сегодня + один_день
печатать 'Завтра:', завтра
вывести 'завтра - вчера:', завтра - вчера
печатать 'вчера - завтра:', вчера - завтра
 
 $ Python datetime_date_math. py
Сегодня : 21 февраля 2013 г.
Один день : 1 день, 0:00:00
Вчера: 20 февраля 2013 г.
Завтра : 2013-02-22
завтра - вчера: 2 дня, 0:00:00
вчера - завтра: -2 дня, 0:00:00
 

Сравнение значений

Значения даты и времени можно сравнивать с помощью стандартных операторов определить, что раньше, а что позже.

 импорт даты и времени
время импорта
напечатать «Таймс:»
t1 = дата-время.время (12, 55, 0)
напечатать '\tt1:', t1
t2 = дата-время.время (13, 5, 0)
напечатать '\tt2:', t2
напечатать '\tt1 < t2:', t1 < t2
распечатать 'Даты:'
d1 = дата/время.дата.сегодня()
напечатать '\td1:', d1
d2 = datetime.date.today() + datetime.timedelta (дни = 1)
напечатать '\td2:', d2
напечатать '\td1 > d2:', d1 > d2
 
 $ питон datetime_comparing.py
Время:
        t1: 12:55:00
        т2: 13:05:00
        t1 < t2: верно
Даты:
        д1: 21 февраля 2013 г.
        д2: 22 февраля 2013 г.
        d1 > d2: Ложь
 

Объединение даты и времени

Используйте класс datetime для хранения значений, состоящих из даты и времени. и компоненты времени. Как и в случае с датой, существует несколько удобные методы класса для создания экземпляров datetime от других общих значений.

 импорт даты и времени
напечатать 'Сейчас:', datetime.datetime.now()
напечатать 'Сегодня:', datetime.datetime.today()
распечатать 'UTC сейчас:', datetime.datetime.utcnow()
д = дата-время.дата-время.сейчас()
для атрибута в ['год', 'месяц', 'день', 'час', 'минута', 'секунда', 'микросекунда']:
    напечатать атрибут, ':', получить атрибут (d, атрибут)
 

Как и следовало ожидать, экземпляр datetime имеет все атрибуты объекта даты и времени.

 $ Python datetime_datetime.py
Сейчас: 2013-02-21 06:35:45.658505
Сегодня : 21.02.2013 06:35:45.659381
UTC сейчас: 21 февраля 2013 г. 11:35:45.659396
2013 год
месяц : 2
день : 21
час : 6
минута: 35
второй: 45
микросекунда: 659677
 

Как и дата, datetime предоставляет удобные методы класса для создание новых экземпляров. Он также включает fromordinal() и отметка времени(). Кроме того, comb() может быть полезен. если у вас уже есть экземпляр даты и экземпляр времени и вы хотите создать дату и время.

 импорт даты и времени
т = дата-время.время (1, 2, 3)
напечатать 't :', t
д = дата-время.дата.сегодня()
напечатать 'd :', d
dt = datetime.datetime.combine (d, t)
напечатать 'дт:', дт
 
 $ Python datetime_datetime_combine.py
т : 01:02:03
д : 21 февраля 2013 г.
ДТ: 2013-02-21 01:02:03
 

Форматирование и синтаксический анализ

Строковое представление объекта datetime по умолчанию использует формат ISO Формат 8601 (ГГГГ-ММ-ДДЧЧ:ММ:СС.мммммм). Альтернативные форматы могут быть сгенерирован с помощью strftime(). Точно так же, если ваши входные данные включает значения меток времени, которые можно анализировать с помощью time.strptime(), затем datetime.strptime() — это удобный способ преобразовать их в экземпляры даты и времени.

 импорт даты и времени
формат = "%a %b %d %H:%M:%S %Y"
сегодня = дата/время.дата/время.сегодня()
распечатать 'ISO :', сегодня
s = сегодня. strftime(формат)
напечатать 'strftime:', с
d = datetime.datetime.strptime(s, формат)
напечатать 'strptime:', d.strftime (формат)
 
 $ Python datetime_datetime_strptime.py
ИСО: 2013-02-21 06:35:45.707450
strftime: Чт 21 февраля 06:35:45 2013
strptime: Чт 21 февраля 06:35:45 2013
 

Часовые пояса

В рамках datetime часовые пояса представлены подклассами tzinfo. Поскольку tzinfo является абстрактным базовым классом, вы необходимо определить подкласс и предоставить соответствующие реализации для несколько способов сделать его полезным. К сожалению, datetime делает не включают какие-либо фактические реализации, готовые к использованию, хотя документация предоставляет несколько примеров реализации. Обратитесь к страница документации стандартной библиотеки для примеров с использованием фиксированных смещений а также класс с поддержкой летнего времени и дополнительные сведения о создании собственного сорт. pytz также является хорошим источником для реализации часового пояса.