Python: Wie kann ich den Generator schneller machen?
Ich habe einen Generator programmiert, der aber sehr langsam läuft. Ich möchte ihn schneller machen, habe aber keine Ahnung wie.
Bild:
1 Antwort
Unter Windows hat man die Möglichkeit ein Python-Programm in eine EXE-Datei zu kompilieren. Diese läuft dann deutlich schneller. Das geht so:
Zuerst installiert man sich das pyinstaller-Modul. Dazu startet man die Eingabeaufforderung als Administrator und gibt folgenden Befehl ein:
- pip3 install pyinstaller oder pip install pyinstaller
Das installiert das benötigte. Danach die Eingabeaufforderung beenden.
Jetzt geht man in den Ordner wo man das Python-Programm gespeichert hat. Von dort die Eingabeaufforderung starten. Und so startet man die Kompilierung. Dazu folgenden Befehl eingeben:
- pyinstaller --onefile --windowed programmname.py
Die Kompilierung startet. Wenn das abgeschlossen ist, findet man dort wo man die programmname.py gespeichert hat 3 weitere Ordner. Einmal build dist und __pycache__ Die Ordner build und __pycache__ kann man löschen. Im Ordner dist befindet sich dann die programmname.exe
Und wie genau soll das Asynchones IO funktionieren?
Da steckt natürlich noch etwas mehr dahinter, du kannst da nicht nur eine Zeile ersetzen.
Das Problem hier ist IO und nicht der Python-Interpreter o.ä.
Was du vorschlägt bringt wie viel? Vielleicht 5% schneller?
Asynchones IO bringt wahrscheinlich 1000%.