Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python Timeit() met voorbeelden

Wat is Python Timeit()?

Python timeit() is een methode in de Python-bibliotheek om de uitvoeringstijd van het gegeven codefragment te meten. De Python-bibliotheek voert de code-instructie 1 miljoen keer uit en biedt de minimale tijd die nodig is voor de gegeven set codefragmenten. Python timeit() is een handige methode die helpt bij het controleren van de prestaties van de code.

Syntaxis:

timeit.timeit(stmt, setup,timer, number)

Parameters

  • stmt :Dit neemt de code waarvoor u de uitvoeringstijd wilt meten. De standaardwaarde is "pass".
  • configuratie :Dit heeft instellingsdetails die moeten worden uitgevoerd voordat stmt. De standaardwaarde is "geslaagd".
  • timer :Dit heeft de timerwaarde, timeit() heeft al een standaardwaarde ingesteld en we kunnen deze negeren.
  • nummer :De stmt wordt uitgevoerd volgens het nummer dat hier wordt gegeven. De standaardwaarde is 1000000.

Om met timeit() te werken, moeten we de module importeren, zoals hieronder getoond:

import timeit

Eerste voorbeeld

Hier is een eenvoudig voorbeeld van de functie timeit()

Codevoorbeeld 1:

# testing timeit()
import timeit
print(timeit.timeit('output = 10*5'))

Uitvoer:

0.06127880399999999

We hebben een eenvoudig voorbeeld gezien dat ons de uitvoeringstijd geeft van de uitvoer van de eenvoudige code-statement =10*5, en de tijd die nodig is om het uit te voeren is 0.06127880399999999.

Timing Meerdere regels in python-code

Er zijn er twee die u meerdere regels code kunt uitvoeren in timeit.timeit(), door een puntkomma te gebruiken of door de code op te slaan als een string met drievoudige aanhalingstekens.

Hier zijn voorbeelden die de werking ervan laten zien.

Voorbeeld 1:puntkomma gebruiken

import timeit
print("The time taken is ",timeit.timeit(stmt='a=10;b=10;sum=a+b'))

Uitgang:

The time taken is  0.137031482

Voorbeeld 2:Drievoudige aanhalingstekens gebruiken

import timeit
import_module = "import random"
testcode = ''' 
def test(): 
    return random.randint(10, 100)
'''
print(timeit.repeat(stmt=testcode, setup=import_module))

Uitgang:

C:\pythontest>python testtimeit.py
The time taken is  0.182619178

timeit – Methoden:

Hier zijn 2 belangrijke timeit-methoden

timeit.default_timer() :Dit zal de standaardtijd teruggeven wanneer uitgevoerd.

timeit.repeat(stmt, setup, timer, repeat, number) :hetzelfde als timeit() , maar met repeat wordt de timeit() genoemd het aantal keren dat repeat wordt gegeven.

Programmavoorbeeld 1:

# testing timeit()
import timeit
import_module = "import random"
testcode = ''' 
def test(): 
    return random.randint(10, 100)
'''
print(timeit.timeit(stmt=testcode, setup=import_module))

Uitgang:

0.46715912400000004

Voorbeeld 2:

default_timer() Voorbeeld

# testing timeit()
 
import timeit
import random
 
def 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)

Uitgang:

The start time is : 0.220261875
The time difference is : 0.0004737320000000045

Voorbeeld 3:timeit.repeat()

# testing timeit()
import timeit
import_module = "import random"
testcode = ''' 
def test(): 
    return random.randint(10, 100)
'''
print(timeit.repeat(stmt=testcode, setup=import_module, repeat=5))

Uitgang:

 [0.43638873, 0.5040939680000001, 0.5069179909999999, 0.3943449330000002, 0.3546886979999999]

timeit.repeat() werkt vergelijkbaar met de functie timeit.timeit(), met het enige verschil dat het in het herhaalargument nodig heeft en de uitvoeringstijd teruggeeft in array-indeling met waarden volgens het herhalingsnummer.

De timingfunctie timeit.timeit() uitvoeren in de opdrachtregelinterface

De syntaxis om uw functie binnen timeit() op de opdrachtregel uit te voeren is als volgt:

python -m timeit [-n N] [-r N] [-s S] [-t] [-c] [-h] [code statement ...]


Opdrachtregelparameters:

  • -n N:het aantal keren dat u wilt dat de code wordt uitgevoerd.
  • -r N:het aantal keren dat u de functie timeit() wilt herhalen
  • -s S:dit heeft instellingsdetails die worden uitgevoerd voordat de code wordt uitgevoerd.
  • -t:hiervoor kunt u gebruik maken van time.time()
  • -c:hiervoor kunt u gebruik maken van time.clock()
  • -h:voor hulp
  • code-statement:de codedetails.

Voorbeeld:

C:\pythontest>python -m timeit -s 'text="hello world"'
20000000 loops, best of 5: 13.1 nsec per loop

Een andere manier om binnen de opdrachtregel uit te voeren is zoals hieronder getoond:

Voorbeeld:

>>> import timeit
>>> print("The time taken is ",timeit.timeit(stmt='a=10;b=10;sum=a+b'))
The time taken is  0.15048536300000137
>>>

Waarom is timeit() de beste manier om de uitvoeringstijd van Python-code te meten?

Hier zijn een paar redenen waarom we timeit() beschouwen als de beste manier om de uitvoeringstijd te meten.

  • Het voert de code-instructie 1 miljoen keer uit, dat is de standaardwaarde, en vanaf dat punt krijgt u de minimale benodigde tijd terug. U kunt de 1 miljoen ook verhogen/verlagen door het argumentnummer in de functie time () in te stellen.
  • Tijdens het uitvoeren van de test wordt de garbagecollection elke keer uitgeschakeld door de functie tijd ().
  • timeit() neemt intern de juiste tijd in beslag volgens uw besturingssysteem dat wordt gebruikt. Het gebruikt bijvoorbeeld time.clock() voor het Windows-besturingssysteem en time.time() voor mac en Linux.

Samenvatting

Timeit() wordt gebruikt om de uitvoeringstijd te krijgen die nodig is voor de gegeven kleine code

Parameters gebruikt met timeit()

  • stmt:dit neemt de code die u wilt meten, de uitvoeringstijd
  • setup:dit heeft setup-details die moeten worden uitgevoerd voordat stmt
  • timer:dit heeft de timerwaarde, timeit() heeft al een standaardwaarde ingesteld en we kunnen deze negeren.
  • nummer:de stmt wordt uitgevoerd volgens het nummer dat hier wordt gegeven.

Python

  1. Python Krijgen huidige tijd
  2. Python-tijdmodule
  3. Python-slaap()
  4. Python String count() met VOORBEELDEN
  5. Python String format() Leg uit met VOORBEELDEN
  6. Methode Python String find() met voorbeelden
  7. Python Lambda-functies met VOORBEELDEN
  8. Python round() functie met VOORBEELDEN
  9. Python map() functie met VOORBEELDEN
  10. Python-teller in verzamelingen met voorbeeld
  11. type() en isinstance() in Python met voorbeelden