О времени выполнения - как его узнать?

Часто бывает полезно и/или интересно знать, сколько времени выполняется тот или иной фрагмент программы. В частности, время выполнения имеет значение для сравнения нескольких алгоритмов и выбора более эффективного. Можно, конечно, определять время "на глазок" или с секундомером, но лучше всё-таки поручить это компьютеру. 

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

Модуль time подключается следующим оператором:

import time

После этого будет доступна функция без параметров time.time() - её значение можно сохранить в переменной:

t1 = time.time()

Можно подключать не весь модуль, а лишь функцию time из него. Это делается так:

from time import time

(в общем случае - from имя-модуля import имя-функции).

В этом случае вызов функции - просто time(), а не time.time() (т.е. без указания имени модуля).


(c) Ю.Д.Красильников, 2021 г.

Пример. Приведенная ниже программа позволяет узнать, сколько секунд требуется, чтобы поочередно возвести в квадрат все целые числа от 0 до 10 миллионов.

from time import time
t1  = time()
for i in range(10000000):
    q = i**2
t2 = time()
print(t2-t1)

При выполнении этой программ в онлайн-компиляторе www.onlinegdb.com это занимает 2,6 секунды.


(c) Ю.Д.Красильников, 2021 г.

Комментарии

Популярные сообщения из этого блога

Задача 1 ЕГЭ по информатике - решаем на Питоне

Задача 9 (Excel) в 2023 г.

Питон и таблицы истинности