import cPickle import pickletools protocol = 2 for protocol in range(3): print "Protocol", protocol, ":" real_const = { "modules" : None } dump1 = cPickle.dumps( real_const, protocol=protocol ) loaded_const = cPickle.loads( dump1 ) assert real_const == loaded_const dump2 = cPickle.dumps( loaded_const, protocol=protocol ) loaded_const = cPickle.loads( dump2 ) assert real_const == loaded_const dump3 = cPickle.dumps( loaded_const, protocol=protocol ) loaded_const = cPickle.loads( dump3 ) assert real_const == loaded_const print "Dumping read const const stream", repr( dump1 ) pickletools.dis( dump1 ) print "Dumping load const const stream", repr( dump2 ) pickletools.dis( dump2 ) print "Dumping load const const stream", repr( dump3 ) pickletools.dis( dump3 )