Дата и время в Python

Содержание
Введение
now: текущее время
today: сегодняшняя дата
Стандартная библиотека
Временные интервалы
Функции из datetime
Похожие статьи

Введение

В этой статье вы узнаете как работать с датой и временем в Python 3.

Текущее время

Создайте файл current_time.py следующего содержания

import datetime current_time = datetime.datetime.now() print(f"Сейчас: {current_time}") # Отдельно час, минута и секунда print(f"\nЧас: {now.hour}" f"\nМинута: {now.minute}" f"\nСекунда: {now.second}" ) # Отдельно год, месяц и день print(f"\nГод: {now.year}" f"\nМесяц: {now.month}" f"\nДень: {now.day}" )

python current_time.py

Сейчас: 2024-04-26 10:45:19.185141 Час: 10 Минута: 45 Секунда: 19 Год: 2024 Месяц: 04 День: 26

Сегодняшняя дата

Создайте файл today.py следующего содержания

import datetime today = datetime.date.today() print(f"Сегодня: {today}")

python today.py

Сегодня: 2024-04-26

Работа со временем в стандартной библиотеке

Создайте файл date_time.py и копируйте туда код из примеров.

Запустить файл можно командой python3 date_time.py

import datetime # DATE specified_date = datetime.date(2020, 11, 23) print(f"specified_date: {specified_date}") today = datetime.date.today() print(f"today: {today}") print(f"today.year: {today.year}") print(f"today.month: {today.month}") print(f"today.day: {today.day}") # Monday is 0 Sunday is 6 print(f"today.weekday: {today.weekday()}") # Monday is 1 Sunday is 7 print(f"today.isoweekday: {today.isoweekday()}")

specified_date: 2020-11-23 today: 2024-04-26 today.year: 2024 today.month: 04 today.day: 26 today.weekday: 4 today.isoweekday: 5

Временные интервалы

Можно прибавлять временные интервалы к текущему времени или вычитать их из него

import datetime # DATE tdelta = datetime.timedelta(days=7) print(f"next week: {today + tdelta}") print(f"last week: {today - tdelta}")

next week: 2024-05-03 last week: 2024-04-19

bday = datetime.date(2134, 3, 9) till_bday = bday - today print(f"days till 200 birthday: {till_bday.days}") print(f"seconds till 200 birthday: {till_bday.total_seconds()}") # TIME t = datetime.time(9, 30, 45, 100000) print(f"hour: {t.hour}") # DATETIME dt = datetime.datetime(2020, 11, 23, 12, 42, 30, 100000) print(f"time: {dt.time()}") print(f"year: {dt.year}") tdelta = datetime.timedelta(days=7) print(f"dt + delta: {dt + tdelta}") dt_today = datetime.datetime.today() dt_now = datetime.datetime.now() dt_utcnow = datetime.datetime.utcnow() print(f"today: {dt_today}\nnow: {dt_now}\nutc: {dt_utcnow}")

days till 200 birthday: 40851 seconds till 200 birthday: 3529526400.0 hour: 9 time: 10:45:19.100000 year: 2024 dt + delta: 2024-05-03 10:45:19.100000 today: 2024-04-26 10:45:19.764377 now: 2024-04-26 10:45:19.764386 utc: 2024-04-26 07:45:19.764390

Функции из datetime

github

_is_leap()

Определяет високосный ли год

def _is_leap(year): "year -> 1 if leap year, else 0." return year % 4 == 0 and (year % 100 != 0 or year % 400 == 0)

_days_before_year()

Определяет сколько дней прошло между 1 января 1-го года и 1 января заданного года

def _days_before_year(year): "year -> number of days before January 1st of year." y = year - 1 return y*365 + y//4 - y//100 + y//400

Похожие статьи
Интерактивный режим
str: строки
\: перенос строки
Списки []
if, elif, else
Циклы
Функции
try except
Пакеты
*args **kwargs
ООП
enum
Опеределить тип переменной Python
Тестирование с помощью Python
Работа с REST API на Python
Файлы: записать, прочитать, дописать, контекстный менеджер…
Скачать файл по сети
SQLite3: работа с БД
datetime: Дата и время в Python
json.dumps
Selenium + Python
Сложности при работе с Python
DJANGO
Flask
Скрипт для ZPL принтера
socket :Python Sockets
Виртуальное окружение
subprocess: выполнение bash команд из Python
multiprocessing: несколько процессов одновременно
psutil: cистемные ресурсы
sys.argv: аргументы командной строки
PyCharm: IDE
pydantic: валидация данных
paramiko: SSH из Python
enumerate
logging: запись в лог
Обучение программированию на Python
Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@eth1.ru если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящуюю по тематике.
3. Хотите поддержать сайт материально
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......