Überprüfen Sie die Speichernutzung Ihrer Python-Objekte
Mit sys.getsizeof()
Sie können die Speichernutzung eines Objekts überprüfen:
import sys mylist = range(0, 10000) print(sys.getsizeof(mylist)) # 48
Woah… warte… warum ist diese riesige Liste nur 48 Bytes groß?
Das liegt daran, dass die Bereichsfunktion ein iterierbares Objekt zurückgibt, das sich nur wie eine Liste von Zahlen verhält, aber intern einfach die letzte Iterationsnummer zählt. Ein Bereich ist viel speichereffizienter als die Verwendung einer tatsächlichen Zahlenliste.
Sie können sich selbst davon überzeugen, indem Sie ein Listenverständnis verwenden, um eine tatsächliche Python-Liste mit Zahlen aus demselben Bereich zu erstellen:
import sys myreallist = [x for x in range(0, 10000)] print(sys.getsizeof(myreallist)) # 87632
Das sind ungefähr 87 KB für 10.000 Nummern.
Python
- Python-Datentypen
- Python-Operatoren
- Python-pass-Anweisung
- Python-Funktionsargumente
- Python-Wörterbuch
- Python range() Funktion:Float, List, For-Schleife Beispiele
- Python time.sleep():Verzögerung zu Ihrem Code hinzufügen (Beispiel)
- Python-Prüfung, ob Datei vorhanden ist | So prüfen Sie, ob ein Verzeichnis in Python existiert
- Eine vierteljährliche Überprüfung Ihrer Lieferkette
- So bereiten Sie Ihre Baumaschinen auf den Frühling vor