Controleer het geheugengebruik van uw Python-objecten
Met sys.getsizeof()
u kunt het geheugengebruik van een object controleren:
import sys mylist = range(0, 10000) print(sys.getsizeof(mylist)) # 48
Woah... wacht... waarom is deze enorme lijst slechts 48 bytes?
De reden is dat de bereikfunctie een itereerbaar object retourneert dat zich alleen gedraagt als een lijst met getallen, maar intern eenvoudig het laatste iteratienummer bijhoudt. Een bereik is veel efficiënter dan het gebruik van een echte lijst met nummers.
Je kunt het zelf zien door een lijstbegrip te gebruiken om een echte Python-lijst met getallen uit hetzelfde bereik te maken:
import sys myreallist = [x for x in range(0, 10000)] print(sys.getsizeof(myreallist)) # 87632
Dat is ongeveer 87 KB voor 10.000 nummers.
Python
- Python-gegevenstypen
- Python-operators
- Python voor Loop
- Python pass-instructie
- Python-functieargumenten
- Python-woordenboek
- Python range() Functie:Float, List, For loop Voorbeelden
- Python time.sleep():voeg vertraging toe aan uw code (voorbeeld)
- Python controleren of bestand bestaat | Hoe te controleren of er een directory bestaat in Python
- Een driemaandelijkse controle van uw toeleveringsketen
- Hoe u uw bouwmachines voorbereidt op de lente