Le module de décapage semble utiliser des caractères d'échappement de chaîne lors du décapage; cela devient inefficace, par ex. sur des tableaux numpy. Considérez ce qui suitManière plus efficace de décaper une chaîne
z = numpy.zeros(1000, numpy.uint8)
len(z.dumps())
len(cPickle.dumps(z.dumps()))
Les longueurs sont 1133 caractères et 4249 caractères respectivement. Z.dumps() révèle quelque chose comme "\ x00 \ x00" (zéros réels dans la chaîne), mais pickle semble utiliser la fonction repr() de la chaîne, ce qui donne "'\ x00 \ x00'" (zéros étant zéros ascii).
ie ("0" dans z.dumps() == False) et ("0" dans cPickle.dumps (z.dumps()) == true)
Vous devez ajouter une question spécifique à votre message ré. –
Que voulez-vous sérialiser une chaîne Python ou un tableau d'octets? – jfs
doit être len (cPickle.dumps (z)) – vartec