Stringkomprimierung in Python

Stringkomprimierung in Python
In-Memory-Datenbankverwaltungssysteme (IMDBMS) können unter anderem zur Komprimierung von URLs und Nachrichten verwendet werden. Werfen wir einen Blick auf die Stringkomprimierung ausführlicher. Stringkomprimierung unter Verwendung der Python -Programmiersprache wird das Diskussionsthema in diesem Artikel sein.

In Python bezieht sich die Stringkomprimierung auf den Prozess der Verkürzung einer großen Schnur. Die ursprüngliche Absicht der Zeichenfolge wird niemals durch Komprimieren geändert. Wir werden die Stringkomprimierung verwenden, um diese URL kürzer zu machen. Obwohl sich die Länge der URL bei der Komprimierung ändert, führt uns die URL, die Sie nach der Verkürzung erhalten.

Bedeutung der Stringkomprimierung in Python

In Python besteht das grundlegende Ziel der Stringkomprimierung darin, so viel Gedächtnis wie machbar zu sparen. Dies liegt daran. Heutzutage erwartet jeder schnell in jeder Arbeit, die er ausführt. Die Datenkomprimierung oder -string dauert weniger Zeit, um zu verarbeiten und die Ausgabe so bald wie möglich bereitzustellen.

Es hat auch schnelle Lesevorgänge, was bedeutet, dass der Benutzer ihn in kürzerer Zeit lesen muss, wenn ein Text komprimiert ist. Infolgedessen speichert die String -Komprimierung Speicher- und Verarbeitungszeit sowie die Zeit, die ein Benutzer zum Lesen einer Nachricht benötigt.

Algorithmus für die Stringkomprimierung in Python

Wir haben gerade den Algorithmus zur Komprimierung einer bestimmten Länge der Eingangszeichenfolge durchlaufen. Die Zeichenfolge sollte so komprimiert werden, dass die kontinuierliche Wiederholung von Zeichen durch das Zeichen ersetzt wird, und dann die Anzahl der kontinuierlichen Wiederholungen durch den Charakter folgt.

  • Wählen Sie das erste Zeichen in der angegebenen Zeichenfolge (STR) aus.
  • An der komprimierten Zeichenfolge anhängen.
  • Gehen Sie die Gesamtsumme an die kompakte Zeichenfolge an, wenn die Anzahl der aufeinanderfolgenden Erscheinungen des Zeichens mehr als 1 beträgt. Wählen Sie das nächste Zeichen und wiederholen Sie die obigen Prozeduren, bis STR abgeschlossen ist.

Beispiel 1: komprimierte eine Zeichenfolge durch Verwendung eines String -Komprimierungsalgorithmus in Python

Wir haben den oben angegebenen Algorithmus im angegebenen Code-Beispiel verwendet. Die angegebene Zeichenfolge muss durch Anwenden des Algorithmus komprimiert werden. Die Kodierung der Lauflänge ist der Begriff für diese Art von Komprimierung. Lassen Sie uns zum besseren Verständnis den String -Komprimierungsalgorithmus in Code einstellen.

Hier haben wir eine Funktion, die als „Kompress definiert wird."Wir haben eine Variable" Mystring "als Argument bestanden. Wir haben in der Funktion einen variablen „Index“ erstellt, der ursprünglich bei Null aufbewahrt wird. Diese Variable „Index“ nimmt den Indexwert der angegebenen Zeichenfolge an, die komprimiert werden soll. Danach haben wir eine leere Zeichenfolge initialisiert und der Variablen "compressed_string" zugewiesen. Nehmen Sie dann die Länge der Zeichenfolge, indem Sie die Längenfunktion über ein "MyString" in der Variablen "str_len" aufrufen.”

Jetzt haben wir eine Weile Bedingung, in der die Anzahl gleich „1“ ist, wenn die Länge der Zeichenfolge nicht mit der String -Indexposition übereinstimmt. Auch hier haben wir eine Weile Bedingung für die Wiederholung der Charaktere innerhalb der komprimierten Zeichenfolge. Unter Verwendung der IF-ELSE-Bedingung wird die Anzahl in die komprimierte Zeichenfolge erhöht, wenn das Zeichen wiederholt wiederholt gefunden wird. Andernfalls werden wir in der Zeichenfolge ein einzelnes Zeichen nicht zählen.

Die Zeichenfolge wird am Ende des Code vor dem Druckausdruck definiert und initialisiert. Innerhalb des Druckausdrucks haben wir die komprimierte Zeichenfolge gedruckt.

Die Ausgabe der angegebenen Zeichenfolge wird wie folgt komprimiert.

Beispiel 2: komprimierte eine Zeichenfolge mit einer ITertools -Bibliothek in Python

Mit iTertools mit Python -Modul können Sie Datenstrukturen überfahren. Diese Art von Datenstruktur wird auch als iterable bezeichnet. Dieses Modul bietet eine speichersparende und schnelle Möglichkeit, Iteratoralgebra zu erstellen.

Durch die Verwendung der ITertools im folgenden Code haben wir "TakeIthing" und "DropHiny" importiert.Diese sind im Code definiert. Danach haben wir eine Funktion definiert, die als „Komprimierung“ dargestellt wird.Die Funktion wird mit der Zeichenfolge aufgerufen, die als Argument komprimiert werden muss.

Da wir eine „if“ -Sbadung haben, ist die Return if nicht die String -Zeile der Guardian -Bedingung im ersten Algorithmus übereinstimmend. Die Argumentation erfolgt über den elendlichen Rückgabewert. Die Schleife wird als Einstellung verwendet. Dies wird über die Zeichen im String -Argument radeln, bis das Zeichen dem anfänglichen Zeichen des String -Arguments entspricht (String [0]).

In dieser Kette ist der Listengenerator die nächste Funktion. Der Generator gibt jeweils nur eine Sache zurück, während die Listenfunktion alle von ihnen abruft. Danach wird der Schwanz mit der Drop -While -Funktion hergestellt, wodurch die Anzahl der vom „Kopf genommenen Elemente aufgenommen werden.Die Join -Funktion verbindet die Elemente der Liste in eine Zeichenfolge, die als neuer Parameter für den Iterationszyklus bereitgestellt wird. Die Iteration wird aufhören, wenn alle Zeichen in der Zeichenfolge entfernt und durch eine leere Zeichenfolge ersetzt wurden.

Die Ausgabe, die wir vom Itertools -Modul erhalten haben, lautet wie folgt.

Beispiel 3: komprimierte eine Zeichenfolge mit einer einfachen Schleife in Python

Hier verwenden wir einen einfachen Schleifenzyklus, um die Zeichenfolge in Python zu komprimieren. Wir haben eine leere Zeichenfolge in der Variablen "String1" erstellt. Die neue Zeichenfolge wird auch als "String2" erstellt, der eine Zeichenfolge hat. Dann haben wir eine Zählung, die „1“ entspricht. Die für die Schleife wird verwendet, die die Bereichsfunktion für die angegebene Zeichenfolge hat. Wenn die Bedingung für die Charaktere ist, die kontinuierlich in der Zeichenfolge wiederholt werden, wird durch die Anzahl erhöht. Andernfalls wird die else -Klausel ausgeführt.

Die aus dem obigen Code generierte Ausgabe lautet wie folgt.

Abschluss

Ich hoffe, Sie haben viel aus dem heutigen umfassenden Python -String -Komprimierungsartikel gelernt. Wir haben durchgemacht, warum Stringkomprimierung für das wirkliche Leben notwendig ist. Wir haben auch ein gründliches Verständnis des zu verwendenden Algorithmus sowie eine klare Aussage des Codes mit und ohne Bibliothek erhalten.