Курс 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. Retrying в Python: повторные вызовы
  2. Декораторы в Python
  3. Управление браузером с Selenium
  4. Метаклассы в Python
  5. Работа с множествами в Python
  6. Работа со временем в Python
  7. Работа с часовыми поясами в Python.
  8. Счетчик ссылок в Python
  9. Создание генераторов в Python
  10. Цикл while в Python
  11. Конкатенация строк с методом join()
  12. Значения по умолчанию в Python
  13. Сравнение def и lambda в Python
  14. Установка и использование emoji
  15. Numpy: разбиение массивов
  16. Метод rename() для переименования файлов и каталогов
  17. Списковые включения в Python
  18. Получение локальных переменных в Python
  19. Работа с collections.Counter
  20. Создание списка дат
  21. Оператор умножения для вектора
  22. Перезапуск ячейки в Jupyter Notebook с dostoevsky
  23. Python: Фильтрация списков с помощью filter()
  24. Оптимизация методов в Python 3.7
  25. Декораторы с аргументами в Python
  26. Анализ текста на русском языке с помощью Pymystem3
  27. Вызов функций по строке в Python.
  28. Работа с Requests для HTTP-запросов
  29. Преобразование текста в речь с Python
  30. Подписка на Kaspersky Team
  31. Обратный список чисел
  32. Проверка на истинность объектов в Python
  33. Участие в LP стейкинге Waves
  34. Запрос DELETE с библиотекой requests
  35. Избегание изменяемых аргументов
  36. Генераторы в Python
  37. Получение ID процесса
  38. Оператор объединения словарей
  39. Измерение времени выполнения кода
  40. Оператор Walrus: правильное использование
  41. Операторы объединения в Python 3.9
  42. Генератор бросков кубиков
  43. Цикл for в Python
  44. Метод __ilshift__ для битового сдвига влево
  45. Создание графики с черепахой
  46. Работа со стеком в Python
  47. Antigravity модуль
  48. Python defaultdict добавление ключа
  49. Повторение элементов в Python

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