Taille maximale d'un dictionnaire en Python?

Je suis à l'aide d'un dictionnaire python pour contenir un grand nombre d'objets, et d'avoir un nom de chaîne pour chacun d'eux. Pour être précis, voici mon code:

from itertools import product
for (i,j,k) in product(range(N),range(M),range(K)):
    var_name='x_'+'_'+str(i)+str(j)+'_'+str(k)
    var_dict[var_name] = f(var_name,other_params)
print len(var_dict)

f(...) renvoie un objet. Dans mon code N=363, M=500, et K=2. J'attends donc 363000 entrées dans le dictionnaire. Mais quand je vérifie la longueur de var_dict, il est 330860!!!

(Apb) len(var_dict)
330860

Voici mes questions:
1)Est il une explication à cela? E. g. est-il une limite pour le nombre d'éléments intégrés dans la table de hachage de python, il est possible d'adresse?

2) Que puis-je faire pour résoudre ce problème?

Merci!

Comme une suggestion, quand apparemment des choses étranges, comme cela se produit, vous devez vérifier (comme par incrémentation d'un compteur dans la boucle) que vous êtes en fait, mettre autant d'articles dans le récipient que vous attendez.

OriginalL'auteur Alt | 2014-05-08