Python Zipinfo -Objekt

Python Zipinfo -Objekt
Verlustlose Datenkomprimierung wird durch das als ZIP bezeichnete Archivdateiformat unterstützt. Verlustlose Komprimierung ist, wenn die ursprünglichen Daten dank des Komprimierungsalgorithmus genau aus den komprimierten Daten nachgebildet werden können. Infolgedessen ist eine ZIP -Datei eine einzige Datei, die eine oder mehrere komprimierte Dateien enthält, die einen perfekten Ansatz zur Reduzierung der Größe riesiger Dateien und zur Zusammenführung der verwandten Informationen bietet.

Wir werden in diesem Beitrag feststellen. Python hat ein integriertes Modul namens Zipfile, das das Objektzipinfo enthält. Mit der Klasse Zipfile Zipinfo kann man ein ZIP -Ordnerelement darstellen. Bei Verwendung der Funktionen von GetInfo () und Infolist () für Zipfile -Objekte werden Objekte der Zipinfo -Klasse zurückgegeben. In jedem Objekt wird ein individuelles Zip -Archivmitglied Informationen gespeichert. Ein Zipinfo -Objekt kann nicht direkt erstellt werden. Mit den nachstehend gezeigten zusätzlichen Methoden können wir Zipinfo -Klasseninstanzen erwerben.

  1. Eine Liste von Zipinfo -Objekten, die jedes Mitglied der Zipfile -Klasse darstellen.
  2. Darüber hinaus wird eine Liste von Objekten der Zipinfo -Klasse für die Mitglieder einer ZIP -Datei von der Methode Infolist () eines Zipfile -Klassenobjekts zurückgegeben.
  3. Ein Objekt der Zipinfo -Klasse eines bestimmten Mitglieds wird von der GetInfo () -Funktion eines Zipfile -Klassenobjekts zurückgegeben.

Syntax des Zipinfo -Objekts in Python

Die folgende Zipinfo -Syntax haben wir in unserem Python -Skript bereitgestellt.

Zipinfo.from_file (Dateiname, arcname = none, strict_timestamps = true)

Im Folgenden haben wir kurz die Syntax von Zipinfo besprochen.

Ein obligatorisches Argument ist von der Funktion von Datei () erforderlich. Der Pfad zur Datei, aus der das Zipinfo -Objekt konstruiert wurde, wird im Feld "Dateiname" aufbewahrt. Dieser Pfad kann ein Objekt des Pfadtyps oder ein Dateiname des STR -Klassentyps sein. Zusätzlich hat es ein optionales Argument „Arcname“. Der Name, der zum Erstellen eines Zipinfo -Objekts verwendet wird, wird in diesem Argument gespeichert.

Ähnlich wie der Dateiname -Parameter hat es den gleichen Standardwert. ArcName erhält den Dateinamen im Zipinfo -Objekt, wenn die Option ArcName ein anderer Name angegeben wird. Ein Zipinfo -Objekt wird nach dieser Methode zurückgegeben. Alle Informationen, die für die Datei mit dem angegebenen Dateinamen erforderlich sind, um eine Zip -Datei zu werden, sind in diesem Zipinfo -Objekt enthalten. Anschließend werden diese Daten nach den Anforderungen des Benutzers abgerufen.

Beispiel 1:
Wir haben die Dir () -Funktion verwendet, um jedes Objekt in der Zipfile -Zipinfo -Klasse zu untersuchen. Schauen Sie sich den Code unten an.

Zipfile importieren
Drucken (Dir (Zipfile.Zipinfo))

Wie oben bereits erläutert, kann auf Zipinfo vom Zipfile -Modul in Python zugegriffen werden. Hier haben wir das Zipfile -Modul hinzugefügt, um das Zipinfo -Objekt zu erhalten. Dann haben wir eine Druckmethode, bei der wir die DIR () -Methode aufgerufen haben, um alle Objekte anzuzeigen, die die Zipinfo -Klasse enthält. Dafür haben wir die Zipfile zusammen mit dem Objektzipinfo an die Druckmethode übergeben.

Wenn der obige Code debugged ist, generiert er die folgenden Ergebnisse:

Beispiel 2:
Wir haben die Zipinfo -Instanzen im folgenden Code verwendet, um die Funktionalität jeder Methode auf den ZIP -Dateien zu erläutern. Lassen Sie uns den Code sehen, das wir unten implementiert haben.

Zipfile importieren
ZF = ZiPFILE.Zipfile ("myfile.Reißverschluss "," W ")
ZF.schreibe ("myfile.txt "," Dir/myfile.txt")
Druck (ZF.Infolist () [0].Dateinamen)
Def Main ():
mit Zipfile.Zipfile ('myfile.ZIP ') als Datei:
Archive = Datei.Infrolist ()
read_file = archiv [-1]
print ("Dateiname:- ".Format (read_file.Dateinamen))
print ("Dateigröße:- ".Format (read_file.Dateigröße))
print ("ist Verzeichnis:- ".Format (read_file.is_dir ()))
print ("Dateidatum & Uhrzeit:- ".Format (read_file.Terminzeit))
Wenn __name__ == '__main__': main ()

Hier haben wir das Zipfile -Paket zuerst importiert. Anschließend haben wir einen Code implementiert, um das Dateiverzeichnis hinzuzufügen, um die Zip -Dateien zu speichern. Zu diesem Zweck haben wir ein Objekt als ZF erstellt und den Dateinamen in der Zipfile -Klasse -Funktion Zipfile angegeben. Wir haben den Namen Zip -Dateinamen in dieser Funktion in einem Schreibmodus festgelegt. Wir haben die Schreibfunktion angerufen, in der wir das Verzeichnis der Datei festgelegt haben. Danach haben wir innerhalb der Druckfunktion die Infinolist -Funktion aufgerufen, um alle Dateien und Ordner des angegebenen Verzeichnisses zu enthalten.

Wenn das ZIP -Dateiverzeichnis festgelegt ist, können wir das Zipinfo -Objekt der Klasse Zipfile verwenden. Wir haben die Hauptfunktion dieses Programms mit dem DEF -Keyword definiert. In der Funktion haben wir die ZIP -Datei bezeichnet, die als 'MyFile vorhanden ist.Reißverschluss'. Wir haben eine Variable als Archiv geschaffen, in der wir Infrolist haben (). Der Inflolist () ist die Instanz der Klassenzipfile. Die Funktion „Infolist ()“ gibt eine Liste aller Dateien und Verzeichnisse im Reißverschluss zurück -> „Zipinfo“ -Objekte.

Danach wird das endgültige Element der Liste einem Variablenarchiv zugewiesen, damit alle „Zipinfos“ -Methoden getestet werden können. Am Ende haben wir eine Druckanweisung, in der wir die Objekte der Zipinfo -Klasse verwendet haben. Die erste Druckanweisung hat den Zipinfo.Dateiname, der den Namen der Datei zurückgibt. Anschließend haben wir eine Zipinfo -Dateigröße, IS_DIR und DATE_TIME -Objekte der Zipinfo -Klasse, um die spezifische Ausgabe gemäß ihrer Funktionalität zurückzugeben.

Die Zipinfo -Objekte lieferten die folgende Ausgabe, die den Dateinamen, sein Verzeichnis, die Dateigröße und das Datum und die Uhrzeit der Datei enthält.

Beispiel 3:
Die Zipinfo -Klasse bietet zahlreiche Methoden. Diese zahlreichen Techniken werden verwendet, um eine ZIP -Datei zu ändern, und können verwendet werden, um verschiedene Operationen darauf durchzuführen. Die von File () Methode ist das, worüber wir hier sprechen.

Aus Zipfile -Import Zipfile, Zipinfo
Zf = Zipfile ("myfile.ZIP ", Modus = 'r')
Print ("Name der vorhandenen Dateien in der ZIP -Datei:", ZF.Namelist (), sep = "\ n")
print ("\ nadding die Datei in die Archieve."))
ZIP_FILE = ZIPINFO.from_file (Dateiname = "myfile.txt")
print (type (Zip_file))
print ("Dateiname des Zipinfo -Objekts:", Zip_file.Dateinamen)

Im Programm haben wir aus dem Zipfile -Modul die Zipfile und Zipinfo importiert. Danach haben wir den Dateinamen im Schreibmodus in der Variablen 'ZF' angegeben. Anschließend erhalten wir die Liste der Dateien im Ordner ZIP -Datei, indem wir die Methode namelist () in der Druckmethode aufrufen. Wir haben eine andere Variable als Zip_file erstellt, in der wir das Zipinfo -Objekt von_file verwendet und einen Dateinamen gegeben haben. Hier haben wir auch den Typ der ZIP -Datei erhalten. Die letzte Druckanweisung verwendet den Instanzfileinamen des Zipinfo.

Die Implementierung des oben genannten Programms ergibt die unten aufgeführte Ausgabe.

Abschluss:

Die Klasse Zipinfo gehört zum Zipfile -Modul. Informationen zu einem Archivmitglied werden in dieser Klasse vertreten. Der Benutzer kann Informationen über die Komponenten einer ZIP -Datei mit verschiedenen Techniken erhalten, die im Tool enthalten sind. Damit Sie es besser verstehen können, haben wir mehrere Proben aufgenommen.