Python-ZIP-tiedosto esimerkin avulla

Anonim

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)

  • Kun arkistotiedosto on tehty, voit napsauttaa tiedostoa hiiren kakkospainikkeella ja valita käyttöjärjestelmän, ja se näyttää arkistotiedostosi siinä alla olevan kuvan mukaisesti

    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)"