Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 04.01.2017
Сообщений: 1
1

Разное время исполнения программы

27.08.2018, 11:51. Просмотров 1022. Ответов 1
Метки нет (Все метки)

"Баловался" с кодом питона и наткнулся на интересный результат: один и тот же код выполняется разное время.
Почему так? Понятно, что первое время может быть больше из-за инициализации, но почему второе и третье разные, и третье выполняется иногда даже медленнее?
Вот сам код:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import time
 
time1 = time.time()
 
#прибавляем 5 ко всем элементам списка. Попытка №1
def add_five(x):
    return x+5
nums = [11, 22, 33, 44, 55]
result = list(map(add_five, nums))
print(result)
 
time2 = time.time()
 
 
#прибавляем 5 ко всем элементам списка. Попытка №2
def add_five2(x):
    return x+5
nums3 = [11, 22, 33, 44, 55]
result3 = list(map(add_five2, nums3))
print(result3)
 
time3 = time.time()
 
#прибавляем 5 ко всем элементам списка. Попытка №3
def add_five3(x):
    return x+5
nums4 = [11, 22, 33, 44, 55]
result4 = list(map(add_five3, nums4))
print(result4)
 
time4 = time.time()
 
t1 = time2 - time1
t2 = time3 - time2
t3 = time4 - time3
 
ttot = time4 - time1
print("Затрачено времени: ", t1)
print("Затрачено времени: ", t2)
print("Затрачено времени: ", t3)
 
print("Затрачено времени всего: ", ttot)
Результаты по времени:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Затрачено времени:  0.00993037223815918
Затрачено времени:  0.001998424530029297
Затрачено времени:  0.002999544143676758
Затрачено времени всего:  0.014928340911865234
=================================
Затрачено времени:  0.009568929672241211
Затрачено времени:  0.002997875213623047
Затрачено времени:  0.0029985904693603516
Затрачено времени всего:  0.01556539535522461
=================================
Затрачено времени:  0.008977413177490234
Затрачено времени:  0.002071857452392578
Затрачено времени:  0.0029997825622558594
Затрачено времени всего:  0.014049053192138672
=================================
Затрачено времени:  0.009940624237060547
Затрачено времени:  0.0030145645141601562
Затрачено времени:  0.003985166549682617
Затрачено времени всего:  0.01694035530090332
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.08.2018, 11:51
Ответы с готовыми решениями:

Разное время выполнения программ
Здравствуйте! Почему скорость выполнения функций отличается в зависимости от того где они...

Не могу найти начала исполнения программы
Только только осваиваю python... Но вот не понятны мне некоторые вещи. Есть исполняемый файл...

Разное время задержки
Здравствуйте. Такая проблема, есть функция, которая должна выполняться каждые N минут. Причем...

Как остановить функцию во время её исполнения
Как остановить функцию во время её исполнения from tkinter import * class Start(object): def...

1
Эксперт Python
3829 / 2828 / 943
Регистрация: 28.10.2013
Сообщений: 7,364
27.08.2018, 12:38 2
Лучший ответ Сообщение было отмечено серафи как решение

Решение

Цитата Сообщение от серафи Посмотреть сообщение
один и тот же код выполняется разное время.
Измерять нужно правильно. Код который выполняется в тысячные доли секунды никогда не покажет один и тот же результат. Или вы реально думаете, что конечный код выполняется интерпретатором, а не процессором?

Такой код нужно запускать сотни тысяч раз и получать среднее время.
Для понимания нормального профайлинга прочитайте документацию по timeit или line_profiler.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.08.2018, 12:38

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как-нибудь можно предотвратить ошибки типа UNKNOWN IDENTIFIER во время исполнения?
Нормальной ide для кодинга на питоне нет, поэтому приходится работать в обычном редакторе с...

Ошибки во время исполнения программы
Приветствую всех форумчян. Во время исполнения программы система выдает 2 ошибки (см. вложения)....

Создание объектов во время исполнения программы
ну от должна вона работать,а не работает,викладою.там все далжно работать,нзнаю.там описание только...

Определение функции во время исполнения программы
Добрый день! Прошу помощи. Скажите, реально ли определить функцию во время исполнения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.