Vor kurzem habe ich die Größe des Speichers von einem Python set
zu, dass von einem frozenset
besetzt besetzt Vergleich mit Pympler:Speicher von Set vs frozenset in Python belegt 2.7
>>> from pympler.asizeof import asizeof
>>> x = range(100)
>>> s = set(x)
>>> f0 = frozenset(x)
>>> f1 = frozenset(s)
>>> asizeof(s)
10824
>>> asizeof(f0)
10824
>>> asizeof(f1)
6728
>>> f0==f1
True
Warum sollte ein frozenset
von einem set
erstellt besetzen eine andere Menge an Speicher als eine andere aus einem anderen iterable? Oder ist das nur eine Eigenart davon, wie Pympler die Menge an Speicher annähert, die eine Variable in Python belegt?
Ähnliches Verhalten mit Python 3.4.0 beobachtet. – lebedov