Compresión de cuerdas en pitón

Compresión de cuerdas en pitón
Se pueden usar sistemas de gestión de bases de datos en memoria (IMDBMS) para comprimir URL y mensajes, entre otras cosas. Echemos un vistazo a la compresión de la cadena con más profundidad. La compresión de cadena utilizando el lenguaje de programación de Python será el tema de la discusión en este artículo.

En Python, la compresión de la cadena se refiere al proceso de acortar una cuerda grande. La intención original de la cadena nunca se alterará comprimiéndola. Utilizaremos la compresión de la cadena para que esta URL sea más corta. Aunque la longitud de la URL cambia cuando se comprime, la URL que obtiene después del acortamiento nos llevará a la misma visual si la pone en Google.

Importancia de la compresión de cuerdas en Python

En Python, el objetivo fundamental de la compresión de la cadena es ahorrar tanta memoria como sea factible. Esto se debe a que la capacidad de memoria requiere el empleo de más recursos, que a su vez son bastante costosos. Hoy en día, todos esperan rapidez en cualquier trabajo que estén completando. La compresión o cadena de datos tardará menos en procesarse y proporcionará la salida lo antes posible.

También tiene operaciones de lectura rápida, lo que significa que si se comprime un texto, el usuario tendrá que leerlo en menos tiempo. Como resultado, la compresión de cadenas ahorrará la memoria y el tiempo de procesamiento, así como el tiempo que tarda un usuario en leer un mensaje.

Algoritmo para la compresión de la cadena en Python

Acabamos de pasar por encima del algoritmo para comprimir una longitud específica de la cadena de entrada. La cadena debe comprimirse para que la repetición continua de los caracteres se sustituya con el personaje, y luego el número de repeticiones continuas es seguido por el personaje.

  • Elija el primer carácter en la cadena dada (STR).
  • A la cadena comprimida, agregarla.
  • Agregue el total a la cadena compactada si el número de apariciones consecutivas del personaje es más de 1. Elija el siguiente carácter y repita los procedimientos anteriores hasta que se complete STR.

Ejemplo 1: comprimido una cadena utilizando un algoritmo de compresión de cadena en Python

Hemos utilizado el algoritmo especificado anteriormente en el ejemplo de código dado. La cadena dada debe comprimirse aplicando el algoritmo. La codificación de longitud de ejecución es el término para este tipo de compresión. Para una mejor comprensión, establezcamos el algoritmo de compresión de cadena en código.

Aquí, tenemos una función que se define como "comprimir."Hemos pasado una variable" mystring "como argumento. Hemos creado una variable "índice" dentro de la función, que inicialmente se mantiene en cero. Esta variable "índice" tomará el valor de índice de la cadena dada para ser comprimido. Después de eso, inicializamos una cadena vacía y la asignamos a la variable "Compressed_string". Luego, tome la longitud de la cadena invocando la función de longitud sobre un "mystring" en la variable "str_len."

Ahora, tenemos una condición de tiempo en la que el recuento es igual a "1" si la longitud de la cadena no coincide con la posición del índice de cadena. Nuevamente tenemos una condición de tiempo para la repetición del personaje dentro de la cadena comprimida. Usando la condición if-else, si el personaje se encuentra repetido consecutivamente, el recuento se incrementará a la cadena comprimida. De lo contrario, no contaremos un solo personaje en la cadena.

La cadena se define e inicializa al final del código antes de la expresión de impresión. Dentro de la expresión de impresión, hemos impreso la cadena comprimida.

La salida de la cadena dada se comprime de la siguiente manera.

Ejemplo 2: comprimido una cadena utilizando una biblioteca de iTertools en Python

El módulo de Python, ITerTools le permite recorrer las estructuras de datos. Este tipo de estructura de datos también se conoce como iterable. Este módulo ofrece una forma de ahorro de memoria y rápida de crear álgebra iterador.

Al utilizar los iTerTools en el siguiente código, hemos importado "Take Whipe" y "Drop Whall."Estos se definen en el código. Después de eso, hemos definido una función que se representa como "compresión."La función se llama con la cadena que debe comprimirse como argumento.

Como tenemos una condición de "si", la línea de retorno "si no es una cadena" es la misma que la condición de guardia en el primer algoritmo. El razonamiento se lleva a cabo a través del valor de retorno. El bucle se utiliza como una toma. Esto acumulará los caracteres en el argumento de cadena hasta que el carácter sea igual al carácter inicial del argumento de cadena (cadena [0]).

En esta cadena, el generador de la lista es la siguiente función. El generador solo devuelve una cosa a la vez, mientras que la función de la lista los recupera todos. Después de eso, la cola se realiza con la función Drop -While, que reduce el número de elementos tomados por la "Cabeza."La función de unión une los elementos de la lista en una cadena, que se proporciona como un nuevo parámetro para el ciclo de iteración. La iteración se detendrá cuando todos los caracteres de la cadena se hayan eliminado y reemplazado con una cadena vacía.

La salida que obtuvimos del módulo ITerTools es el siguiente.

Ejemplo 3: comprimido una cadena usando un bucle simple en Python

Aquí, estamos usando un ciclo de bucle simple para comprimir la cadena en Python. Hemos creado una cadena vacía en la variable "String1". La nueva cadena también se crea como "String2", que tiene una cadena. Entonces, tenemos un recuento que es igual a "1". Se utiliza el bucle for, que tiene la función de rango para la cadena dada. Si la condición es para los caracteres repetidos continuamente en la cadena, se incrementará por el recuento. De lo contrario, la cláusula delse se ejecutará.

La salida generada por el código anterior es el siguiente.

Conclusión

Espero que hayas aprendido mucho del completo artículo de compresión de cadena de Python de hoy. Hemos pasado por qué la compresión de cuerdas es necesaria para la vida real. También obtuvimos una comprensión profunda del algoritmo a emplear, así como una declaración clara del código con y sin la biblioteca.