Heim  >  Artikel  >  Backend-Entwicklung  >  Drei Methodencodes zur Berechnung der Ausführungszeit mit Python

Drei Methodencodes zur Berechnung der Ausführungszeit mit Python

高洛峰
高洛峰Original
2017-03-20 09:22:311534Durchsuche

Dieser Artikel stellt hauptsächlich die relevanten Informationen zur Berechnungsmethode von Python zur Ausführungszeit vor. Freunde, die sie benötigen, können darauf verweisen

Lassen Sie mich zunächst über die Fallstricke sprechen, die ich habe Als ich auf das Problem stieß, plante ich die Ausführung des Python-Skripts und überwachte den Prozess. Die Laufzeit des Python-Skripts war viel länger als die von mir im Python-Skript berechnete Programmausführungszeit.

Die Ausführungszeit des überwachten Python-Skripts beträgt 36 Stunden und die Ausführungszeit des Python-Skripts selbst beträgt etwa 4 Stunden.

Das erste, was mir einfiel, nachdem das Problem aufgedeckt wurde, war, dass mit Linux etwas nicht stimmte. Ich habe verschiedene Protokolle durchsucht und keine Auffälligkeiten gefunden.

Dann dachte ich an py2neo, das in Python verwendet wird, um Daten asynchron zu schreiben und die Prozessausführung zu blockieren.

Endlich habe ich das Problem gefunden: Die Art und Weise, wie das Python-Skript Zeitstatistiken verwendet, ist time.clock(), und diese Methode zählt die Ausführungszeit der CPU, nicht die Ausführungszeit die Programmzeit.

Als nächstes vergleichen wir mehrere statistische Python-Zeitmethoden:

Methode 1:

import datetime
starttime = datetime.datetime.now()
#long running
#do something other
endtime = datetime.datetime.now()
print (endtime - starttime).seconds

datetime.datetime.now( ) ermittelt den aktuellen Wert Nach Beendigung der Programmausführung ist der auf diese Weise erhaltene Zeitwert die Programmausführungszeit.

Methode 2:

start = time.time()
#long running
#do something other
end = time.time()
print end-start

time.time() ruft die aktuelle Zeit in Sekunden seit der Epoche ab. Bruchteile von Sekunden können vorhanden sein, wenn die Systemuhr diese bereitstellt. Was dieser Ort also zurückgibt, ist ein Gleitkomma-Typ. Hier wird auch die Ausführungszeit des -Programms ermittelt.

Methode 3:

start = time.clock()
#long running
#do something other
end = time.clock()
print end-start

time.clock() gibt die CPU-Zeit seit dem Start des Programms bzw. seit dem ersten Mal, dass clock() gelaufen ist, zurück angerufen. Dies hat die gleiche Genauigkeit wie das System aufzeichnet. Was zurückgegeben wird, ist ebenfalls ein Gleitkommatyp. Hier wird die Ausführungszeit der CPU ermittelt.

Hinweis: Programmausführungszeit = CPU-Zeit + IO-Zeit + Schlaf- oder Wartezeit

Vielen Dank fürs Lesen, ich hoffe, es kann allen helfen, vielen Dank für Ihre Unterstützung Website!

Das obige ist der detaillierte Inhalt vonDrei Methodencodes zur Berechnung der Ausführungszeit mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn