Питхон Тимеит () са примерима

Преглед садржаја:

Anonim

Шта је Питхон Тимеит ()?

Питхон тимеит () је метода у Питхон библиотеци за мерење времена извршења датог исечка кода. Питхон библиотека покреће наредбу кода 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 милион пута која је подразумевана вредност и одатле ће вам вратити минимално потребно време. Такође можете повећати / смањити милион подешавањем броја аргумента у функцији тиме ().
  • Током извршавања теста, сакупљање смећа је онемогућено сваки пут по функцији тиме ().
  • тимеит () интерно узима тачно време према вашем оперативном систему који се користи. На пример, користиће тиме.цлоцк () за оперативни систем Виндовс и тиме.тиме () за Мац и Линук.

Резиме

Тимеит () се користи за добијање времена извршења датог малог кода

Параметри који се користе са тимеит ()

  • стмт: Ово ће узети код који желите да измерите време извршења
  • подешавање: Ово ће имати детаље о подешавању које треба извршити пре стмт-а
  • тимер: Ово ће имати вредност тајмера, тимеит () већ има подразумевану вредност и можемо је занемарити.
  • број: Стмт ће се извршити у складу са бројем који је овде дат.