Python:
Перетворення дати в рядок
Як це зробити:
Python значно спрощує перетворення дат на рядки. Скористайтесь методом strftime
, який доступний для об’єктів date. Ось як:
from datetime import datetime
# Отримати поточну дату та час
now = datetime.now()
# Перетворити її на рядок у форматі: Місяць день, Рік
date_string = now.strftime("%B %d, %Y")
print(date_string) # Вивід: Березень 29, 2023 (або поточна дата)
# Формат: РРРР-ММ-ДД
iso_date_string = now.strftime("%Y-%m-%d")
print(iso_date_string) # Вивід: 2023-03-29 (або поточна дата)
Як я це роблю
Ось як я отримую дату в форматі ISO 8601 з інформацією про часовий пояс:
def datestamp() -> str:
"""
Поточна дата та час з часовим поясом у форматі ISO.
"""
return datetime.now().astimezone().isoformat()
Приклад виводу:
>>> datestamp()
'2024-04-04T01:50:04.169159-06:00'
Глибше занурення
Історично, перетворення дат у рядки було основоположним в програмуванні через необхідність представлення дат у зручному для людини форматі.
Альтернативи strftime
включають використання методу isoformat
для формату ISO 8601, або сторонніх бібліотек, таких як arrow
і dateutil
, які пропонують більш гнучкі опції парсингу та форматування.
З точки зору реалізації, strftime
означає “string format time” (рядковий формат часу) і має коріння в програмуванні на C. strftime
у Python інтерпретує коди форматування, такі як %Y
для року і %m
для місяця, дозволяючи майже нескінченну налаштовуваність.
Дивіться також
Для глибшого занурення в функції дати та часу в Python:
- Офіційна документація Python
datetime
: https://docs.python.org/3/library/datetime.html - Для тих, хто зацікавлений в повному списку директив
strftime
: https://strftime.org/ - Для дослідження сторонніх бібліотек дати/часу:
- Arrow: https://arrow.readthedocs.io/en/latest/
- python-dateutil: https://dateutil.readthedocs.io/en/stable/