Articles of serialización

Cómo serializar objetos hash en Python

¿Cómo puedo serializar objetos hash ?, estoy usando shelve para almacenar muchos objetos. Jerarquía: – user – client – friend usuario.py: import time import hashlib from localfile import localfile class user(object): _id = 0 _ip = “127.0.0.1” _nick = “Unnamed” _files = {} def __init__(self, ip=”127.0.0.1″, nick=”Unnamed”): self._id = hashlib.sha1(str(time.time())) self._ip = ip self._nick = […]

Clave: almacén de valores en Python para posiblemente 100 GB de datos, sin cliente / servidor

Existen muchas soluciones para serializar un diccionario pequeño: json.loads / json.dumps , pickle , ujson , ujson , o incluso utilizando sqlite . Pero cuando se trata de posiblemente 100 GB de datos, ya no es posible usar tales módulos que posiblemente reescribirían todos los datos al cerrar / serializar. redis no es realmente una […]

Django Rest Framework ModelSerializer Set atributo en crear

Al crear un objeto inicialmente, utilizo el usuario que ha iniciado sesión actualmente para asignar el campo de modelo “propietario”. El modelo: class Account(models.Model): id = models.AutoField(primary_key=True) owner = models.ForeignKey(User) name = models.CharField(max_length=32, unique=True) description = models.CharField(max_length=250, blank=True) Serializador para establecer propietario: class AccountSerializer(serializers.ModelSerializer): class Meta: model = models.Account fields = (‘name’, ‘description’) def restre_object(self, […]

json.dumps (): escapando de barras diagonales

Dado que las barras inclinadas hacia adelante solo pueden aparecer en cadenas dentro de un objeto serializado JSON y no se escapan (en la configuración predeterminada), usando json.dump(some_dict).replace(‘/’, r’\/’) Funciona de forma fiable, pero parece hacky. Sé que las barras diagonales hacia delante no tienen que escaparse, pero puede que las escape, y para mi […]

¿Encurtidos ligeros para tipos básicos en python?

Todo lo que quiero hacer es serializar y deserializar tuplas de cadenas o ints. Miré pickle.dumps () pero la sobrecarga de bytes es significativa. Básicamente, parece que ocupa aproximadamente 4 veces la cantidad de espacio que necesita. Además, todo lo que necesito son tipos básicos y no tengo necesidad de serializar objetos. Marshal es un […]

obtener la ruta de la clase o el espacio de nombres de una clase en Python, incluso si está nested

Actualmente estoy escribiendo un módulo de serialización en Python que puede serializar clases definidas por el usuario. para hacer esto, necesito obtener el espacio completo de nombres del objeto y escribirlo en un archivo. Entonces puedo usar esa cadena para recrear el objeto. por ejemplo, supongamos que tenemos la siguiente estructura de clase en un […]

Alternativas de salmuera

Estoy tratando de serializar una lista grande (~ 10 ** 6 filas, cada una con ~ 20 valores), para usarla más tarde (así que la falta de seguridad de Pickle no es una preocupación). Cada fila de la lista es una tupla de valores, derivada de alguna base de datos SQL. Hasta ahora, he visto […]

¿Hay alguna manera de deserializar el objeto java a través de python?

Almacené el objeto java en hbase (es decir) Digamos que tengo un objeto ‘Usuario’ con 3 parámetros como primer nombre, nombre medio y apellido. Usé el siguiente código para la serialización en Java Object object = (object) user; byte[] byteData = SerializationUtils.serialize((Serializable) object); y almacenado en hbase como ‘almacenamiento de objeto completo (en formato byte […]

Django: ¿opciones de serialización personalizadas?

Estoy trabajando en un servicio web basado en Django y estoy tratando de averiguar cuál será la mejor manera de hacer mi serialización. Sin embargo, el requisito delicado es que me gustaría tener un control total sobre el formato y los campos contenidos en la respuesta. Por ejemplo, los serializadores Django (que, desafortunadamente, incluyen el […]

Aplanar JSON basado en un atributo – python

Tengo una matriz de json como esta: [ { ‘id’: 1, ‘values’: [ { ‘cat_key’: ‘ck1’ }, { ‘cat_key’: ‘ck2’ } ] }, { ‘id’: 2, ‘values’: [ { ‘cat_key’: ck3 } ] } ] Quiero aplanar esta matriz en los values campo de modo que: [ { ‘id’: 1, ‘cat_key’: ‘ck1’ }, { ‘id’: […]