Курс Python → Измерение времени выполнения с помощью time

В процессе разработки программного обеспечения часто возникает необходимость измерять время выполнения различных участков кода. Это может быть особенно полезно при оптимизации, отладке или анализе производительности. Иногда, просто взглянув на время выполнения, можно выявить узкие места в алгоритмах или неэффективные операции. В Python для этой задачи отлично подходит стандартный модуль time, который позволяет легко и быстро проводить такие замеры.

Чтобы измерить время выполнения кода, достаточно сохранить текущее время перед началом выполнения интересующего блока и затем снова замерить время по завершении. Вычитая одно значение из другого, мы получаем продолжительность выполнения данного куска кода. Этот подход прост и эффективен, не требуя установки дополнительных библиотек. Давайте рассмотрим пример, который продемонстрирует данный процесс.

import time

# Замер времени выполнения
start_time = time.time()  # Сохраняем текущее время

# Код, время выполнения которого мы хотим измерить
result = sum(range(1000000))  # Пример длительной операции

end_time = time.time()  # Сохраняем время после выполнения
execution_time = end_time - start_time  # Вычисляем время выполнения

print(f"Время выполнения: {execution_time:.6f} секунд")

В приведенном примере мы используем функцию sum() для вычисления суммы чисел от 0 до 999999. Сначала мы сохраняем текущее время в переменной start_time, затем выполняем наш код, и после этого снова замеряем время с помощью time.time(). Разница между end_time и start_time дает нам время, затраченное на выполнение операции. В конце мы выводим это время на экран с точностью до шести знаков после запятой.

Использование модуля time для измерения времени выполнения кода — это простой и интуитивно понятный способ анализа производительности. Такой подход позволяет разработчикам быстро находить и устранять узкие места, а также оптимизировать код, что в конечном итоге приводит к улучшению общей эффективности программного обеспечения. Вы можете использовать данный метод не только для отдельных функций, но и для более сложных блоков кода, получая точную информацию о производительности вашего приложения.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Инверсия списка и строки
  2. Применение функции map() в Python
  3. Получение ID процесса
  4. Создание генераторов
  5. Работа с NumPy.linalg
  6. Namedtuple в Python
  7. Метод classmethod
  8. Просмотр атрибутов и методов класса
  9. Логические значения в Python
  10. Фильтрация последовательности
  11. Преобразование строки в число
  12. Приближение чисел в Python
  13. Проверка дубликатов в Python
  14. Метод matmul для умножения матриц
  15. Создание новых списков
  16. Создание копии списка в Python
  17. Особенности ключей словаря в Python
  18. Блок else в обработке исключений
  19. Декораторы в Python
  20. Классы данных в Python
  21. Модуль math: константы π и e
  22. Просмотр внешних файлов в %pycat
  23. Метод splitlines() для разделения строк
  24. Создание уникального проекта
  25. Транспонирование матрицы в Python
  26. Работа с deque из collections
  27. Раздувающийся словарь в Python
  28. Проверка наличия элемента в списке
  29. Monkey Patching в Python
  30. Модуль os: работа с файлами и папками
  31. Работа с модулем Calendar
  32. Операторы Splat и splatty-splat
  33. Принципы программирования
  34. Асинхронное программирование с asyncio
  35. Анализ текста на русском языке с помощью Pymystem3
  36. Расчет времени выполнения
  37. Работа с изображениями PIL
  38. Работа с функцией next() в Python
  39. Модуль sys: основы
  40. Работа со словарями с defaultdict из collections
  41. Определение имен функций
  42. Python-dateutil — работа с датами
  43. Печать комбинаций в Python с Itertools
  44. Хранение переменных в Python.
  45. Генератор данных в Keras

Marketello читают маркетологи из крутых компаний