Олег Марков
Работа со временем в Python при помощи модуля time
Введение
Модуль time в Python предоставляет функции для работы с временем и датой, измерения интервалов и управления задержками в выполнении программы. Он является частью стандартной библиотеки Python и широко применяется в разработке, автоматизации задач, профилировании кода и работе с таймерами.
В этой статье мы разберём основные функции модуля time и примеры их практического использования.
Подключение модуля и базовые функции
Модуль time встроен в Python и не требует установки. Для начала его нужно импортировать:
import time
# Получение текущего времени в секундах с начала эпохи
current_time = time.time()
print(current_time)
# Преобразование в структуру времени
local_time = time.localtime(current_time)
print(local_time)time.time() возвращает количество секунд с 1 января 1970 года (эпоха UNIX), что удобно для замеров и вычислений интервалов. time.localtime() преобразует это значение в читаемую структуру с годом, месяцем, днем и временем.
Форматирование времени
Модуль позволяет преобразовать время в строку с заданным форматом:
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print(formatted_time) # 2025-10-16 06:00:00Здесь используются директивы формата:
%Y— год%m— месяц%d— день%H— часы%M— минуты%S— секунды
Работа с временем часто используется при логировании событий, измерении производительности кода и организации задержек. Чтобы глубже освоить управление временем и изучение стандартных модулей Python на практике, рекомендуем курс Основы Python. Курс содержит 209 уроков и 34 упражнения, AI-тренажёры для практики 24/7, решение задач с живым ревью наставника и еженедельные встречи с менторами.
Задержка выполнения
Для приостановки выполнения программы используется функция sleep:
print("Начало")
time.sleep(2) # пауза 2 секунды
print("Конец")time.sleep() полезна для имитации задержек, работы с внешними сервисами или управления частотой выполнения задач.
Измерение времени выполнения кода
Модуль time позволяет оценить производительность участков кода:
start = time.time()
# Пример кода
for i in range(1000000):
x = i * i
end = time.time()
print("Время выполнения:", end - start, "секунд")Такой подход часто используется для профилирования и оптимизации алгоритмов.
Частые ошибки
- Использование
time.sleepв больших циклах без учёта общей задержки. - Ошибки при форматировании времени из-за неправильных директив.
- Пренебрежение преобразованием времени в локальный формат при работе с датами.
- Ошибки при вычислении интервалов из-за неправильной единицы измерения.
Частозадаваемые вопросы
Можно ли измерять время выполнения более точно?
Да, для высокой точности рекомендуется использовать time.perf_counter().
Отличие localtime и gmtime?
localtime — локальное время, gmtime — UTC.
Можно ли форматировать дату и время для логов?
Да, используя strftime можно задать удобный формат вывода.
sleep блокирует программу, есть ли альтернативы?
В многопоточном коде можно использовать асинхронные функции asyncio.sleep для неблокирующих пауз.
Заключение
Модуль time Python предоставляет набор инструментов для работы с временем, измерения интервалов и управления задержками в программах.
Использование функций модуля time упрощает логирование, профилирование и синхронизацию процессов. Для закрепления навыков работы с временем и изучения дополнительных возможностей Python рекомендуем курс Основы Python.
В первых 3 модулях курса доступно бесплатное содержание, что позволяет сразу практиковаться с функциями модуля time и понять структуру курса до полного изучения.
Постройте личный план изучения Python до уровня Middle — бесплатно!
Python — часть карты развития Backend
100+ шагов развития
30 бесплатных лекций
300 бонусных рублей на счет
Все гайды по Python
Лучшие курсы по теме

Основы Python
Антон Ларичев
Nest.js с нуля
Антон Ларичев