Python:Рецепты/Простое профилирование программы: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
(не показаны 4 промежуточные версии 1 участника) | |||
Строка 9: | Строка 9: | ||
Измерение периодов времени, в течение которых выполняются определенные фрагменты кода. | Измерение периодов времени, в течение которых выполняются определенные фрагменты кода. | ||
{{ | {{Примечание1|Это простой способ профилирования, если вам нужна более информативная детализация, обратитесь к функции [[cProfile.run()]]}} | ||
==Решение== | ==Решение== | ||
Строка 19: | Строка 19: | ||
Измерим сколько займет времени вычисление произведения первых 100 000 чисел. | Измерим сколько займет времени вычисление произведения первых 100 000 чисел. | ||
<syntaxhighlight lang="python" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | ===Код=== | ||
<syntaxhighlight lang="python" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" highlight="2,7"> | |||
import time | import time | ||
startTime = time.time() | startTime = time.time() | ||
Строка 32: | Строка 34: | ||
=См.также= | =См.также= | ||
=Внешние ссылки= | =Внешние ссылки= | ||
Строка 39: | Строка 39: | ||
<references /> | <references /> | ||
{{ | {{Навигационная таблица/Портал/Python}} | ||
}} | |||
[[Категория:Рецепты]] | [[Категория:Рецепты]] |
Текущая версия от 20:06, 23 мая 2023
Проверка/Оформление/Редактирование: Мякишев Е.А.
Простое профилирование программы
Задача
Измерение периодов времени, в течение которых выполняются определенные фрагменты кода.
Решение
Вызовите функцию time.time() в начале блока кода, время выполнения которого вы хотите измерить, а затем в конце этого блока, затем вычтите значение первой временной метки из значения второй, в результате получите длительность промежутка времени, прошедшего между двумя вызовами.
Пример
Измерим сколько займет времени вычисление произведения первых 100 000 чисел.
Код
import time
startTime = time.time()
# Вычисление произведения первых 100 000 чисел
product = 1
for i in range(1, 100000):
product = product * i
endTime = time.time()
print('Длина результата: %s цифр.' % (len(str(product))))
print('Расчет занял %s секунд' % (endTime - startTime))
См.также
Внешние ссылки
Категории:
- Справочник языка Python
- Python
- Проверка:myagkij
- Оформление:myagkij
- Редактирование:myagkij
- Страницы, где используется шаблон "Навигационная таблица/Телепорт"
- Страницы с телепортом
- Рецепты
- Рецепты Python
- Модуль time
- Функция time()
- Функция time.time()
- Код с вызовом time()
- Код с вызовом time.time()
- Профилирование
- Профилирование в Python
- Профилирование кода