Python Plik ZIP z przykładem
⚡ Inteligentne podsumowanie
Python Tworzy archiwa ZIP za pomocą wbudowanych modułów shutil i zipfile. Tutaj nauczysz się kompresować cały katalog za pomocą make_archive(), kompresować konkretne pliki za pomocą ZipFile i np.tract, wyświetl i odczytaj zawartość archiwum.

Python umoĹĽliwia szybkie tworzenie archiwĂłw zip/tar.
Następujące polecenie spakuje cały katalog
shutil.make_archive(output_filename, 'zip', dir_name)
Poniższe polecenie daje Ci kontrolę nad plikami, które chcesz zarchiwizować
ZipFile.write(filename)
Jak skompresować cały katalog w formacie ZIP Python
Oto kroki, jak utworzyć plik Zip Python
Krok 1) Aby utworzyć plik archiwum z Python, upewnij się, że twoje oświadczenie importu jest poprawne i w odpowiedniej kolejności. Oto oświadczenie importu dla archiwum from shutil import make_archive
Code Wyjaśnienie
- Importuj klasę make_archive z modułu shutil
- Użyj funkcji split, aby oddzielić katalog i nazwę pliku od ścieżki do lokalizacji pliku tekstowego (guru99)
- Następnie wywołujemy moduł „shutil.make_archive(“guru99 archive, “zip”, root_dir)”, aby utworzyć plik archiwum, który będzie w formacie zip
- Następnie przekazujemy do katalogu głównego rzeczy, które chcemy spakować. Zatem wszystko w katalogu zostanie spakowane
- Po uruchomieniu kodu po prawej stronie panelu możesz zobaczyć, że został utworzony plik archiwum zip.
Krok 2) Po utworzeniu pliku archiwum możesz kliknąć prawym przyciskiem myszy na plik i wybrać system operacyjny, a zostaną w nim wyświetlone pliki archiwum, jak pokazano poniżej
Teraz plik archive.zip pojawi siÄ™ na Twoim systemie operacyjnym (Windows Explorer)
Krok 3) Po dwukrotnym kliknięciu pliku zobaczysz listę wszystkich zawartych w nim plików.
Jak spakować określone pliki za pomocą ZipFile
Krok 4) In Python możemy mieć większą kontrolę nad archiwum, ponieważ możemy zdefiniować, który konkretny plik uwzględnić w archiwum. W naszym przypadku uwzględnimy dwa pliki w archiwum „guru99.txt” oraz „guru99.txt.bak”.
Code Wyjaśnienie
- Importuj klasę Zipfile z pliku zip Python moduł. Moduł ten daje pełną kontrolę nad tworzeniem plików zip
- Tworzymy nowy plik Zip o nazwie („testguru99.zip, „w”)
- Tworzenie nowej klasy Zipfile wymaga przekazania uprawnień, ponieważ jest to plik, więc musisz zapisać informacje do pliku jako newzip
- Użyliśmy zmiennej „newzip” w odniesieniu do utworzonego przez nas pliku ZIP
- Używając funkcji write na zmiennej „newzip” dodajemy do archiwum pliki „guru99.txt” i „guru99.txt.bak”
Po wykonaniu kodu zobaczysz, że po prawej stronie panelu tworzony jest plik o nazwie „guru99.zip”
Note: Tutaj nie wydajemy żadnego polecenia „zamknięcia” pliku, np. „newzip.close”, ponieważ używamy blokady zakresu „With”, więc gdy program wyjdzie poza ten zakres, plik zostanie wyczyszczony i automatycznie zamknięty.
Krok 5) Kiedy -> kliknij prawym przyciskiem myszy plik (testguru99.zip) i -> wybierz swój system operacyjny (Windows Explorer), w folderze zostaną wyświetlone pliki archiwum, jak pokazano poniżej.
Po dwukrotnym kliknięciu pliku „testguru99.zip” zostanie otwarte kolejne okno, w którym wyświetlone zostaną zawarte w nim pliki.
Absolutna Python Code Aby utworzyć plik ZIP
Oto pełny kod
Python 2 Przykład
import os
import shutil
from zipfile import ZipFile
from os import path
from shutil import make_archive
def main():
# Check if file exists
if path.exists("guru99.txt"):
# get the path to the file in the current directory
src = path.realpath("guru99.txt");
# rename the original file
os.rename("career.guru99.txt","guru99.txt")
# now put things into a ZIP archive
root_dir,tail = path.split(src)
shutil.make_archive("guru99 archive", "zip", root_dir)
# more fine-grained control over ZIP files
with ZipFile("testguru99.zip","w") as newzip:
newzip.write("guru99.txt")
newzip.write("guru99.txt.bak")
if __name__== "__main__":
main()
Python 3 Przykład
import os import shutil from zipfile import ZipFile from os import path from shutil import make_archive # Check if file exists if path.exists("guru99.txt"): # get the path to the file in the current directory src = path.realpath("guru99.txt"); # rename the original file os.rename("career.guru99.txt","guru99.txt") # now put things into a ZIP archive root_dir,tail = path.split(src) shutil.make_archive("guru99 archive","zip",root_dir) # more fine-grained control over ZIP files with ZipFile("testguru99.zip", "w") as newzip: newzip.write("guru99.txt") newzip.write("guru99.txt.bak")
Jak byćtract (Rozpakuj) plik ZIP w Python
Aby rozpakować archiwum, otwórz je w trybie odczytu za pomocą ZipFile i wywołaj np.tractall() do extracdo każdego pliku lub np.tract() w celu wyciągnięcia pojedynczego członka.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: myzip.extractall("extracted_files")
ByłytracMetoda tall() zapisuje wszystkie zarchiwizowane pliki do folderu przekazanego jako argument.
Jak wyświetlić listę plików w pliku ZIP Archive
Możesz przeglądać archiwum bez koniecznościtracrobiąc to. Metoda namelist() zwraca nazwy wszystkich plików zapisanych w pliku ZIP.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: print(myzip.namelist())
Wyświetla listę nazw plików zawartych w archiwum.
Jak odczytać plik w archiwum ZIP Archive
Możesz odczytać plik członka bezpośrednio z archiwum bez rozpakowywaniaping zapisz go na dysku korzystając z metody open() programu ZipFile.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: with myzip.open("guru99.txt") as f: print(f.read())
Przydaje się, gdy potrzebujesz tylko zawartości jednego pliku z dużego archiwum.







