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

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

Одним из самых простых методов является использование функции time.time(). Эта функция возвращает текущее время в секундах с плавающей точкой, начиная с 1 января 1970 года (так называемая «эпоха Unix»). Чтобы измерить время выполнения блока кода, достаточно зафиксировать текущее время перед его началом и затем снова зафиксировать время после завершения выполнения. Разница между этими двумя значениями и будет временем, затраченным на выполнение кода.

Пример использования данного метода может выглядеть следующим образом:

import time

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

# Ваш код, время выполнения которого вы хотите измерить
for i in range(1000000):
    pass  # Здесь может быть любой ваш код

# Записываем текущее время после выполнения блока кода
end_time = time.time()

# Вычисляем время выполнения
execution_time = end_time - start_time
print(f"Время выполнения кода: {execution_time} секунд")

В приведённом примере мы измеряем время выполнения цикла, который выполняется миллион раз. После завершения цикла мы вычисляем разницу между end_time и start_time, чтобы получить время выполнения. Этот подход очень удобен для быстрой оценки производительности кода при отладке и профилировании.

Таким образом, использование функции time.time() позволяет легко и быстро замерять время выполнения различных участков кода. Это особенно полезно, когда вы хотите понять, какие части вашего приложения требуют оптимизации, или когда вы работаете с алгоритмами, где время выполнения имеет критическое значение. Не забывайте, что для более сложных сценариев можно использовать и другие инструменты, такие как модуль timeit, который предоставляет более точные измерения, учитывающие разные факторы, влияющие на производительность.

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

Автор урока

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

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

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

  1. Работа со слайсами
  2. Повторение и перенос строки
  3. Установка и использование howdoi
  4. Удаление ключа из словаря в Python
  5. Обработка данных в Python
  6. Генерация чисел с range()
  7. Перевод текста с Python Translator
  8. Модуль math: основные функции
  9. Преобразование символов в нижний регистр
  10. Определение основы слова с showballstemmer
  11. Удаление дубликатов из списка
  12. Именование переменных в Python
  13. Проверка существования переменной с оператором :=
  14. Concrete Paths — метод .with_suffix()
  15. Метод rsub в Python: расширение функциональности вычитания
  16. Добавление вложенных списков
  17. Lambda Functions in Python
  18. Методы сравнения множеств
  19. Регистрация на хакатоне
  20. Тестирование функции сложения
  21. Преобразование в float
  22. Объединение списков с использованием itertools.chain
  23. Сериализация и десериализация объектов
  24. Тернарный оператор в Python
  25. Numpy: разбиение массивов
  26. Новшества Flask 2.0
  27. Работа с контекстными менеджерами
  28. Прокачанный трейсинг ошибок
  29. Метод get для словаря
  30. Генераторные выражения и islice.
  31. Преобразование регистра строк
  32. Форматирование вывода списков
  33. Функции с дополнением
  34. Структуры данных в Python
  35. Очистка данных в Python
  36. Модуль inspect: получение информации о объектах
  37. Списковое включение в Python
  38. Копирование и вставка текста в Python
  39. Возврат нескольких значений из функции
  40. Docstring в Python
  41. Python itertools combinations() — группировка элементов
  42. Хэш-функции в Python
  43. Оператор break в Python
  44. Метод hash в Python
  45. Искажение имен в Python
  46. Ускорение кода с помощью векторизации

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