Python. Größe eines Objekts - Python

Ich muss die Größe der Objekte in meinem Python-Programm wissen. ich habe for Schleife, in der ich Größe von Gegenständen wissen muss. Wenn ich benutze sys.getsizeof dann wird der Speicher nicht sofort freigegeben und ich kann die tatsächliche Größe nicht sehen. Gibt es einen Weg es zu tun?

Meine Objekte sind JSON und String. Im schlimmsten Fall kann ich Speichern Sie sie in der Datei und schauen Sie sich die Dateigrößen an. Aber wie kann ich schauen? bei Dateigröße aus Python-Code?

Bearbeiten: Die Größe der serialisierten Objekte ist wichtiger für mich. Der zweite Teil der Frage ist also wichtig.

Vielen Dank.

Antworten:

12 für die Antwort № 1

Bedenkt, dass type(json.dumps(something))==str Sie sollten buchstäblich nur verwenden können len.

Folgendes berücksichtigen

obj = {"content" : "something goes here"}
json_obj = json.dumps(obj)
json_size = len(json_obj)

serialized_size = len(serialized_object)

if json_size < serialized_size:
print "I"d use the JSON with this..."

Speisekarte