¿Cómo convertirías un anidamiento de objetos Python frozenset en un entero único que fuera el mismo en todas las sesiones y plataformas de Python?Hashing persistente de Python Frozen Sets
p. Ej. Consigo valores diferentes de almohadilla() en diferentes plataformas
32 bits
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> a=frozenset([frozenset([1,2,3]),frozenset(['a','b','c'])]);
>>> hash(a)
1555175235
64-bits
Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> a=frozenset([frozenset([1,2,3]),frozenset(['a','b','c'])]);
>>> hash(a)
-6076998737938213053
Por lo que vale la pena, he comprobado que la suma de md5 del congelado en escabeche es la misma en las plataformas de 32 y 64 bits. – jcollado
@jcollado - ¡Gracias! :) – mac
¿Es un encurtido de tipo desordenado, garantizado para encurtir lo mismo en todas las plataformas? Soy reacio a confiar en que así será. Probablemente sacaré los elementos de los conjuntos en listas, y los clasificaré antes del decapado. – dstromberg