Шта је Питхон Тимеит ()?
Питхон тимеит () је метода у Питхон библиотеци за мерење времена извршења датог исечка кода. Питхон библиотека покреће наредбу кода 1 милион пута и пружа минимално време потребно за дати скуп исечака кода. Питхон тимеит () је корисна метода која помаже у провери перформанси кода.
Синтакса:
timeit.timeit(stmt, setup,timer, number)
Параметри
- стмт : Ово ће узети код за који желите да измерите време извршења. Подразумевана вредност је „пасс“.
- подешавање : Ово ће имати детаље о подешавању које треба извршити пре стмт-а. Подразумевана вредност је „пасс“.
- тимер : Ово ће имати вредност тајмера, тимеит () већ има подразумевану вредност и можемо је занемарити.
- број : Стмт ће се извршити у складу са бројем који је овде дат. Подразумевана вредност је 1000000.
Да бисмо радили са тимеит (), морамо да увеземо модул, као што је приказано доле:
import timeit
Први пример
Ево једноставног примера функције тимеит ()
Пример кода 1:
# testing timeit()import timeitprint(timeit.timeit('output = 10*5'))
Излаз:
0.06127880399999999
Видели смо једноставан пример који нам даје време извршавања једноставног извода изјаве кода = 10 * 5, а време потребно за његово извршење је 0,06127880399999999.
Временско одређивање Више линија у питхон коду
Постоје две верзије кода које можете извршити у тимеит.тимеит (), користећи тачку и зарез или тако што ћете код затворен као низ сачувати са троструким наводницима.
Ево примера који показују како то функционише.
Пример 1: Коришћење зареза
import timeitprint("The time taken is ",timeit.timeit(stmt='a=10;b=10;sum=a+b'))
Излаз:
The time taken is 0.137031482
Пример 2: Коришћење троструких наводника
import timeitimport_module = "import random"testcode = '''def test():return random.randint(10, 100)'''print(timeit.repeat(stmt=testcode, setup=import_module))
Излаз:
C:\pythontest>python testtimeit.pyThe time taken is 0.182619178
тимеит - Методе:
Ево 2 важне методе тимеит
тимеит.дефаулт_тимер () : Ово ће вратити подразумевано време када се изврши.
тимеит.репеат (стмт, сетуп, тимер, репеат, нумбер) : исто као тимеит (), али са репеат тимеит () се назива колико пута је дато понављање.
Пример програма 1:
# testing timeit()import timeitimport_module = "import random"testcode = '''def test():return random.randint(10, 100)'''print(timeit.timeit(stmt=testcode, setup=import_module))
Излаз:
0.46715912400000004
Пример 2:
дефаулт_тимер () Пример
# testing timeit()import timeitimport randomdef test():return random.randint(10, 100)starttime = timeit.default_timer()print("The start time is :",starttime)test()print("The time difference is :", timeit.default_timer() - starttime)
Излаз:
The start time is : 0.220261875The time difference is : 0.0004737320000000045
Пример 3: тимеит.репеат ()
# testing timeit()import timeitimport_module = "import random"testcode = '''def test():return random.randint(10, 100)'''print(timeit.repeat(stmt=testcode, setup=import_module, repeat=5))
Излаз:
[0.43638873, 0.5040939680000001, 0.5069179909999999, 0.3943449330000002, 0.3546886979999999]
тимеит.репеат () ради слично функцији тимеит.тимеит (), с једином разликом која је потребна у аргументу понављања и враћа време извршења у формату низа са вредностима према броју понављања.
Извршавање временске функције тимеит.тимеит () унутар интерфејса командне линије
Синтакса за извршавање ваше функције унутар тимеит () на командној линији је следећа:
python -m timeit [-n N] [-r N] [-s S] [-t] [-c] [-h] [code statement… ]
Параметри командне линије:
- -н Н: колико пута желите да се код изврши.
- -р Н: колико пута желите да се функција тимеит () понови
- -с С: ово ће имати детаље о подешавању који ће се извршити пре извршавања кода.
- -т: за ово можете искористити тиме.тиме ()
- -ц: за ово можете искористити тиме.цлоцк ()
- -х: за помоћ
- изјава кода: детаљи кода.
Пример:
C:\pythontest>python -m timeit -s 'text="hello world"'20000000 loops, best of 5: 13.1 nsec per loop
Други начин на који можете извршити унутар командне линије је као што је приказано испод:
Пример:
>>> import timeit>>> print("The time taken is ",timeit.timeit(stmt='a=10;b=10;sum=a+b'))The time taken is 0.15048536300000137>>>
Зашто је тимеит () најбољи начин за мерење времена извршавања Питхон кода?
Ево неколико разлога због којих сматрамо да је тимеит () најбољи начин за мерење времена извршења.
- Изводи наредбу кода 1 милион пута која је подразумевана вредност и одатле ће вам вратити минимално потребно време. Такође можете повећати / смањити милион подешавањем броја аргумента у функцији тиме ().
- Током извршавања теста, сакупљање смећа је онемогућено сваки пут по функцији тиме ().
- тимеит () интерно узима тачно време према вашем оперативном систему који се користи. На пример, користиће тиме.цлоцк () за оперативни систем Виндовс и тиме.тиме () за Мац и Линук.
Резиме
Тимеит () се користи за добијање времена извршења датог малог кода
Параметри који се користе са тимеит ()
- стмт: Ово ће узети код који желите да измерите време извршења
- подешавање: Ово ће имати детаље о подешавању које треба извршити пре стмт-а
- тимер: Ово ће имати вредност тајмера, тимеит () већ има подразумевану вредност и можемо је занемарити.
- број: Стмт ће се извршити у складу са бројем који је овде дат.