Python antaa sinun luoda nopeasti zip / tar-arkistoja.
Seuraava komento pakkaa koko hakemiston
shutil.make_archive(output_filename, 'zip', dir_name)
Seuraava komento antaa sinun hallita arkistoitavia tiedostoja
ZipFile.write(filename)
Tässä on vaiheet Zip-tiedoston luomiseen Pythonissa
Vaihe 1) Jos haluat luoda arkistotiedoston Pythonista, varmista, että tuontilauseke on oikea ja kunnossa. Tässä on arkiston tuontilausunto
from shutil import make_archive
Koodin selitys
- Tuo make_archive-luokka moduulin shutilistä
- Jaa toiminto jakamalla hakemisto ja tiedostonimi polusta tekstitiedoston sijaintiin (guru99)
- Sitten kutsumme moduulin "shutil.make_archive (" guru99 arkisto, "zip", root_dir) "luomaan arkistotiedoston, joka on zip-muodossa
- Sen jälkeen siirrymme päähakemistoon asioista, jotka haluamme pakata ylös. Joten kaikki hakemistossa pakataan
- Kun suoritat koodin, näet, että arkiston zip-tiedosto on luotu paneelin oikealla puolella.
Vaihe 2)
Nyt archive.zip-tiedosto näkyy käyttöjärjestelmässäsi (Windows Explorer)
Vaihe 3) Kun kaksoisnapsautat tiedostoa, näet luettelon kaikista siellä olevista tiedostoista.
Vaihe 4) Pythonissa meillä on enemmän hallintaa arkistosta, koska voimme määrittää, mikä tietty tiedosto sisällytetään arkistoon. Meidän tapauksessamme sisällytämme kaksi tiedostoa arkistoon "guru99.txt" ja "guru99.txt.bak".
Koodin selitys
- Tuo Zipfile-luokka zip-tiedosto Python-moduulista. Tämä moduuli antaa täyden hallinnan zip-tiedostojen luomiseen
- Luomme uuden Zip-tiedoston nimeltä ("testguru99.zip," w ")
- Uuden Zipfile-luokan luominen edellyttää luvan antamista, koska se on tiedosto, joten sinun on kirjoitettava tiedot tiedostoon newzip-muodossa
- Käytimme muuttujaa "newzip" viitataksemme luomaamme zip-tiedostoon
- Lisäämällä "newzip" -muuttujan kirjoitusfunktiolla tiedostot "guru99.txt" ja "guru99.txt.bak" arkistoon
Kun suoritat koodin, näet, että tiedosto luodaan paneelin oikealle puolelle nimellä "guru99.zip"
Huomautus : Täällä emme anna komentoja "sulkea" tiedostoa, kuten "newzip.close", koska käytämme "With" -alueen lukitusta, joten kun ohjelma putoaa tämän alueen ulkopuolelle, tiedosto puhdistetaan ja suljetaan automaattisesti.
Vaihe 5) Kun napsautat hiiren oikealla painikkeella tiedostoa (testguru99.zip) ja -> valitset käyttöjärjestelmän (Windows Explorer) , se näyttää arkistotiedostot kansiossa alla olevan kuvan mukaisesti.
Kun kaksoisnapsautat tiedostoa "testguru99.zip", se avaa toisen ikkunan, ja tämä näyttää siihen sisältyvät tiedostot.
Tässä on täydellinen koodi
Python 2 -esimerkki
tuonti ostuonti shutilzip-tiedostojen tuonnista ZipFileos-tuontipolultafrom shutil import make_archivedef main ():# Tarkista onko tiedostoa olemassajos polku on olemassa ("guru99.txt"):# hae polku tiedostoon nykyisessä hakemistossasrc = polku.realpath ("guru99.txt");# nimeä alkuperäinen tiedosto uudelleenos.rename ("ura.guru99.txt", "guru99.txt")# nyt laittaa asiat ZIP-arkistoonroot_dir, tail = polku.split (src)shutil.make_archive ("guru99-arkisto", "zip", root_dir)# tarkempaa ZIP-tiedostojen hallintaaja ZipFile ("testguru99.zip", "w") newzip:newzip.write ("guru99.txt")newzip.write ("guru99.txt.bak")jos __nimi __ == "__main__":main ()
Python 3 -esimerkki
tuonti ostuonti shutilzip-tiedostojen tuonnista ZipFileos-tuontipolultafrom shutil import make_archive# Tarkista onko tiedostoa olemassajos polku on olemassa ("guru99.txt"):# hae polku tiedostoon nykyisessä hakemistossasrc = polku.realpath ("guru99.txt");# nimeä alkuperäinen tiedosto uudelleenos.rename ("ura.guru99.txt", "guru99.txt")# nyt laittaa asiat ZIP-arkistoonroot_dir, tail = polku.split (src)shutil.make_archive ("guru99-arkisto", "zip", root_dir)# tarkempaa ZIP-tiedostojen hallintaaja ZipFile ("testguru99.zip", "w") newzip:newzip.write ("guru99.txt")newzip.write ("guru99.txt.bak")
Yhteenveto
- Voit pakata koko hakemiston komennolla "shutil.make_archive (" nimi "," zip ", root_dir)
- Valitse pakattavat tiedostot komennolla "ZipFile.write (tiedostonimi)"