Formatos de compresión en Python

logo python

En su mayoría, los lenguajes poseen métodos para compactar archivos. Veamos en este post, formatos de compresión en Python.

zlib y gzip pertenecen a la librería zip de GNU, por su lado  bz2  es compatible con el proporciona acceso al formato zip2 más moderno.

 En ambos casos, estos métodos de compactación de datos en Python, aceptan cualquier  formato de entrada, y al mismo ofrecen  interfaces para leer y escribir archivos comprimidos de forma transparente.

tarfile lee y escribe el formato de archivo Unix.

zipfile funciona con archivos basados en el formato popularizado por el programa de PC PKZIP

Estos módulos, permiten  combinar varios archivos, en un sólo que puede ser manejado como una unidad. 

….. es el tiempo más lento del mundo, cuando va de prisa

R.Arjona

Error «Premature end of data in tag badges line 1 in country_module_list.xml file» en Prestashop 1.6

error prestashop

El error «Premature end of data in tag badges line 1 in country_module_list.xml file», puede aparecer en Prestashop 1.6, de manera imprevista y sin aparente causa.

Este suele venir acompañado de otros errores, en un listado que es más o menos como el que vemos a continuación:

  1. Error found : StartTag: invalid element name in country_module_list.xml file.
  2. Error found : Premature end of data in tag badges line 1 in country_module_list.xml file.
  3. Error found : Premature end of data in tag module line 1 in country_module_list.xml file.
  4. Error found : Premature end of data in tag modules line 1 in country_module_list.xml file.
  5. Error found : CData section not finished Allow the purchase of combinations of products wit in must_have_module_list.xml file.
  6. Error found : Premature end of data in tag additional_description line 1 in must_have_module_list.xml file.
  7. Error found : Premature end of data in tag module line 1 in must_have_module_list.xml file.
  8. Error found : Premature end of data in tag modules line 1 in must_have_module_list.xml file.

La solución a este error es una acción combinada que incluye estos tres pasos:

Eliminar estos archivos en /config/xml 

Limpiar la cache de nuestra tienda

Acceder a al archivo classes siguiendo la ruta public_html/classes y modificar estas líneas.

protected static $is_addons_up = true;
    public static function addonsRequest($request, $params = array())
    {
        return false;
        if (!self::$is_addons_up) {
            return false;

La causa de este error en PS 1.6 parece ser que el servidor de addons(complementos), crea archivos xml, no válidos o no reconocibles como válidos.

Espero que este post ayude a alguien.

Gracias

También yo tengo esos momentos en los que soy asesino, juez y victima.

Y.

TypeError: ‘int’ object is not iterable. Python

python error

El error TypeError: ‘int’ object is not iterable, puede ser lanzado en Python, cuando intentamos iterar dentro de un vector, pero no indicamos un rango de recorrido.

Revisa si tienes algo como esto:

for i in len(vector)

Intenta cambiarlo por esto.

for I in range(len(vector))

Puedes ver aquí la causa del error index out of range

Espero modestamente que este artículo, sirva de ayuda a alguien.

Gracias

«…..lo que realmente importa no es lo que te da la vida, sino lo que haces con ello….»

Diferencias entre flatten() y ravel() en Python

logo python

Muchas veces las usamos indistintamente pero existen diferencias entre flatten() y ravel(), en Python

Cuando necesitamos convertir un ndarray en un array de una sola dimensión, podemos valernos de algunas de estas dos funciones de numpy, la biblioteca para operar funciones numéricas que Python posee.

flatten() vs ravel()

Las diferencias entre ambas funciones no son muchas, pero existen. Veamos

flatten()

Solo nos retornará una copia del array original, por lo que si modificamos su composición en el transcurso de nuestro código, nos seguirá devolviendo el array inicial

Por otro lado en comparación con ravel(), es más lento y ocupa mayor cantidad de memoria.

flatten() además, es un método propio del objeto ndarray

ravel()

Su resultado es una vista o referencia del array que esta aplanando o convirtiendo, pero si este cambia, al ser una referencia, el también se ve afectado y actualiza su contenido.

Es mucho más rápido y no ocupa memoria.

ravel() actúa como una función, pero esta diseñado como una librería

Espero modestamente que este artículo, sirva de ayuda a alguien.

Gracias


“Todo como el diamante, antes que luz es carbon”

JMarti