la taille de la mémoire de Python structure de données

Comment puis-je savoir la taille de la mémoire d'un Python structure de données? Je suis à la recherche de quelque chose comme:

sizeof({1:'hello', 2:'world'})

Il est grand si elle compte à chaque chose de manière récursive. Mais même une base non-récursive de résultat permet de. Fondamentalement, je veux avoir une idée des différentes options de mise en œuvre comme le n-uplet c. s. liste c. s. classe en termes d'empreinte mémoire. C'est important parce que j'ai l'intention d'avoir des millions de l'objet instancié.

Mon dev plate-forme est Disponible 2.6.

  • Cela va être une très lente du programme, sauf si vous avez beaucoup de mémoire. Plus la taille de la table de recherche va être assez énorme (en millions d'objets?). Just sayin'
  • namedtuple c'est une bonne alternative à l'utilisation de classes que l'espace requis par chaque instance est le même que pour un n-uplet. Si vous avez un grand nombre d'instances d'une classe, vous devriez regarder dans __slots__
InformationsquelleAutor Wai Yip Tung | 2010-08-12