salmuera de Python (estoy hablando estándar de Python 2.5/2.6/2.7 aquí) no puede conservar en vinagre cerraduras, objetos de archivo, etc.¿Por qué los generadores no pueden ser en escabeche?
También puede no generadores de encurtidos y expresiones lambda (o cualquier otro código anónimo), porque la salmuera muy solo almacena referencias de nombre.
En caso de cerraduras y funciones dependientes del sistema operativo, el motivo por qué no puede extraerlos es obvio y tiene sentido.
Pero ¿por qué no puedes extraer generadores?
Nota: sólo por la claridad - Estoy interesado en la razón fundamental (o supuestos y opciones que entraron en esa decisión de diseño) por eso, no en "porque le da un pepinillo error".
Me doy cuenta de que la pregunta es un poco amplia, aquí hay una regla general de si su respuesta: "Si estas suposiciones se elevaran, o el tipo de generador permitido de alguna manera más restringido, ¿volverían a funcionar los generadores de decapado?"
¿Cuándo tendría sentido encurtir un generador? – NullUserException
@NullUser: no es demasiado difícil de imaginar; Estás iterando a través de uno y quieres detener tu programa y luego reanudarlo donde lo dejaste más tarde. –
... o reanudar al mismo tiempo, pero desde un programa diferente (= la serialización también se utiliza en la transmisión de red) – Radim