Преобразование объекта datetime в Python в строку
Существует несколько способов отобразить значения даты и времени с помощью Python, но не все возвращают удобочитаемые результаты.
Например, если получить столбец timestamp из кадра данных DataFrame и сохранить его как переменную Python, значение сохраняется как объект DateTime. Если вы не знакомы с форматом объекта DateTime, то не выглядит не так понятно, как обычный формат наподобие ГГГГ-ММ-ДД чч:мм:сс.
Если вам требуется вывести дату и время на печать или использовать ее для проверки метки времени, объект DateTime можно преобразовать в строку. При этом DateTime автоматически преобразуется в стандартный формат времени.
В этой статье мы покажем, как отобразить метку времени в качестве значения столбца, затем преобразуем его в объект DateTime и, наконец, в строковое значение.
Отображение метки времени в виде значения столбца
Чтобы отобразить текущую метку времени как значение столбца, вызовите current_timestamp() .
В результате возникает значение даты и времени на момент вызова.

Назначение метки времени объекту DateTime
Вместо вывода даты и времени в столбце это значение можно назначить переменной.
После назначения переменную можно вызвать для вывода сохраненного значения даты и времени в качестве объекта DateTime.
Дата и время являются текущими на момент назначения переменной в качестве объекта DateTime, но значение объекта DateTime является статическим, если не присваивается новое значение.
Преобразование в строку
Вы можете преобразовать объект DateTime в строку, вызвав метод str() в переменной. Вызов str() просто преобразует объект DateTime в строку. Он не обновляет значение текущим значением даты и времени.
Python DateTime для строки
Вы можете конвертировать большинство объектов в строку с помощью STR () встроенного метода.
В этом руководстве мы будем преобразовать объект Python DateTime для строки с использованием встроенной функции str () и метода dateTime.dateTime.strftime ().
Синтаксис str () что мы будем использовать, показано ниже
Синтаксис strftime () показано ниже
Приведены примеры обоих этих сценариев.
Пример 1: преобразовать dateTime в строку
В этом примере мы получим текущее время, используя datetime.now () Отказ datetime.now () Возвращает объект типа класса datetime.dateTime Отказ Мы преобразуем объект DateTime в String, используя str () Отказ И распечатайте строку и его тип в консоль, просто чтобы убедиться.
Мы преобразовали объект DateTime в String.
Теперь вы можете применить любые строковые операции на этой строке. В следующей программе. Давайте получим дату из строки DateTime, используя нарезку индекса.
Объяснение
При нанесении STR (DateTimeObject) требуется метод DateTime .__ STR__ (). И вызов STR (DateTimeObject) эквивалентен DateTimeObject.isoformat (”).
В следующем примере мы будем инициализировать объект DateTime и проверьте результаты, когда мы преобразуем его в строку, а также при печати с ISOFormat (”).
Формат TateTime String.
Вы также можете контролировать результат, когда вы преобразуете объект DateTime в String, используя метод STRFTIME ().
strftime () принимает строку формата и возвращает dateTime, отформатированный в этот формат.
Узнайте больше о формате Python DateTime.
Резюме
В этом руководстве примеров Python мы узнали, как преобразовать объект DateTime на String, с помощью хорошо подробных примеров.
Работа с датой и временем в Python
В Python есть два модуля для работы с датой в временем: datetime и time .
Модуль datetime
Модуль datetime содержит классы:
- datetime.date
- datetime.time
- datetime.datetime
- datetime.timedelta
Также существует класс tzinfo , который применяется для работы с часовыми поясами.
Класс datetime.date
Класс datetime.date принимает три аргумента: год, месяц и день.
Давайте посмотрим, какой сейчас день:
Класс datetime.datetime
Класс datetime.datetime принимает аргументы: год, месяц, день, час, минута, секунда и микросекунда.
Давайте посмотрим, какое сейчас время:
Получить из объекта datetime отдельно дату и отдельно время:
Классы datetime.date и datetime.datetime содержат метод strftime() , который позволяет создавать строку, отображающую время в более понятной для человека форме.
| %a | Сокращенное название дня недели |
| %A | Полное название дня недели |
| %b | Сокращенное название месяца |
| %B | Полное название месяца |
| %c | Дата и время |
| %d | День месяца [01,31] |
| %H | 24-часовой формат часа [00,23] |
| %I | 12-часовой формат часа [01,12] |
| %j | День года. Цифровой формат [001,366] |
| %m | Номер месяца. Цифровой формат [01,12] |
| %M | Минута. Цифровой формат [00,59] |
| %p | До полудня или после (AM или PM) |
| %S | Секунда. Цифровой формат [00,61] |
| %U | Номер недели в году. Цифровой формат [00,53] (с воскресенья) |
| %w | День недели. Цифровой формат [0(воскресенье), 6] |
| %W | Номер недели в году. Цифровой формат [00,53] (с понедельника) |
| %x | Дата |
| %X | Время |
| %y | Год без века. Цифровой формат [00,99] |
| %Y | Год с веком. Цифровой формат |
| %Z | Временная зона |
| %% | Знак процента |
Методы класса datetime :
- datetime.today() — объект datetime из текущей даты и времени; работает также, как и datetime.now() со значением tz=None .
- datetime.now(tz=None) — объект datetime из текущей даты и времени, местное время.
- datetime.utcnow() — объект datetime из текущей даты и времени, по Гринвичу.
- datetime.fromtimestamp(timestamp) — дата из стандартного представления времени.
- datetime.fromordinal(ordinal) — дата из числа, представляющего собой количество дней, прошедших с 01.01.1970.
- datetime.combine(date, time) — объект datetime из комбинации объектов date и time .
- datetime.strptime(date_string, format) — преобразует строку в datetime (так же, как и функция strptime из модуля time ).
- datetime.strftime(format) — преобразует объект datetime в строку согласно формату.
- 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() — возвращает время в секундах с начала эпохи Unix.
- 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() — возвращает строковое представление текущего местного времени.
Класс datetime.timedelta
Класс datetime.timedelta позволяет выполнять операции над датами — складывать, вычитать, сравнивать. Конструктор принимает именованные аргументы days , weeks , hours , minutes , seconds , milliseconds , microseconds :
Интервал времени 5 дней, 1 час и 1 минута. Получить результат можно с помощью атрибутов days , seconds и microseconds (5 дней и 3660 секунд):