import sys
class NonSlottedImage(object):
def __init__(self, id, caption, url):
self.id = id
self.caption = caption
self.url = url
class SlottedImage(object):
__slots__ = ['id', 'caption', 'url']
def __init__(self, id, caption, url):
self.id = id
self.caption = caption
self.url = url
ni = NonSlottedImage(1,2,3)
si = SlottedImage(1,2,3)
print "Non slotted:", sys.getsizeof(ni)
print "Slotted:", sys.getsizeof(si)