Messung der Ausführungszeit mit Python With

In der Lage sein

Sie können die Zeit mit mit messen. Es kann verwendet werden, wenn die Zeit mit Kaggle usw. gemessen wird.

Referenz

Verwendet in Mercari Competition 1st Code ..

wie benutzt man

Schreiben Sie einfach @contextmanager, bevor Sie die Funktion definieren, die Sie als Kontextmanager verwenden möchten.

Wenn der Timer aufgerufen wird, wird die Anfangszeit in t0 gespeichert und yeild verlässt die temporäre Funktion. Nachdem die Verarbeitung von time.sleep (1) abgeschlossen ist, kehrt es wieder zum Timer zurück und gibt die Differenz zur Anfangszeit aus.

qiita.rb


from contextlib import contextmanager
import time

@contextmanager
def timer(name):
    t0 = time.time()
    print("start")
    yield
    print("end")
    print(f'[{name}] done in {time.time() - t0:.0f} s')


with timer('process train'): 
        time.sleep(1)

image.png

Wenn @contextmanager nicht beschrieben wird, kann der Timer nicht als Kontextmanager fungieren und es tritt ein Fehler auf. image.png

Kontextmanager

[mit Protokoll und Kontextmanager] (https://docs.python.org/ja/3/reference/datamodel.html#context-managers "Qiita") Der Kontextmanager übernimmt die Eingangs- und Ausgangsverarbeitung, die zum Ausführen von Codeblöcken erforderlich ist.

Wie im folgenden Beispiel gezeigt, beschreibt die Kontextmanagerklasse den Prozess zum Starten und den Prozess zum Beenden. Wenn Sie es mit @contextmanager zu einem Kontextmanager machen, wird der Timer am Anfang und am Ende aufgerufen. Wenn @contextmanager nicht beschrieben wird, tritt ein Fehler auf, weil enter nicht definiert ist. image.png Referenz

Recommended Posts

Messung der Ausführungszeit mit Python With
Memo zur Messung der Python-Ausführungszeit
Funktionsausführungszeit (Python)
Messung der Ausführungszeit
So messen Sie die Ausführungszeit mit Python Teil 1
So messen Sie die Ausführungszeit mit Python Part 2
Zeitsynchronisation (Windows) mit Python
Messen Sie die Ausführungszeit von Funktionen in Python
Python (vom ersten Mal bis zur Ausführung)
Einfache parallele Ausführung mit Python-Unterprozess
Python> Verarbeitungszeitmessung> time.time () --start_time
FizzBuzz in Python3
Erster Python
Scraping mit Python
Zeitmessung
Statistik mit Python
Scraping mit Python
Python mit Go
Twilio mit Python
Spielen Sie mit 2016-Python
Getestet mit Python
Erster Python
mit Syntax (Python)
Bingo mit Python
Zundokokiyoshi mit Python
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
Versuchen Sie, Foldl und Foldr mit Python: Lambda zu machen. Auch Zeitmessung
Bereiten Sie die Ausführungsumgebung von Python3 mit Docker vor
[Python3] Eine Geschichte, die bei der Zeitzonenkonvertierung steckt
Erstellen Sie eine Python-Ausführungsumgebung mit VS-Code
✨ Einfach mit Python ☆ Geschätzte verstrichene Zeit nach dem Tod ✨
Serielle Kommunikation mit Python
Zip, entpacken mit Python
Django 1.11 wurde mit Python3.6 gestartet
Primzahlbeurteilung mit Python
Python mit Eclipse + PyDev.
Socket-Kommunikation mit Python
Datenanalyse mit Python 2
Python: Zeitreihenanalyse
Scraping in Python (Vorbereitung)
Versuchen Sie es mit Python.
Python lernen mit ChemTHEATER 03
Sequentielle Suche mit Python
"Objektorientiert" mit Python gelernt
Führen Sie Python mit VBA aus
Umgang mit Yaml mit Python
Löse AtCoder 167 mit Python
Serielle Kommunikation mit Python
[Python] Verwenden Sie JSON mit Python
Python lernen mit ChemTHEATER 05-1
Lerne Python mit ChemTHEATER
1.1 Erste Schritte mit Python
Binarisierung mit OpenCV / Python
3. 3. KI-Programmierung mit Python
Kernel-Methode mit Python
Nicht blockierend mit Python + uWSGI
Scraping mit Python + PhantomJS
Tweets mit Python posten