„Python“ ZIP failas su pavyzdžiu

Anonim

„Python“ leidžia greitai sukurti „zip / tar“ archyvus.

Vykdant komandą bus užklijuotas visas katalogas

shutil.make_archive(output_filename, 'zip', dir_name)

Vykdydami komandą galite valdyti failus, kuriuos norite archyvuoti

ZipFile.write(filename)

Čia pateikiami veiksmai, kaip sukurti „ZIP“ failą „Python“

1 žingsnis. Norėdami sukurti archyvo failą iš „Python“, įsitikinkite, kad importavimo sakinys teisingas ir tvarkingas. Čia yra archyvo importo ataskaita

from shutil import make_archive

Kodo paaiškinimas

  • Importuoti „make_archive“ klasę iš modulio „shutil“
  • Naudokite padalijimo funkciją, kad suskirstytumėte katalogą ir failo pavadinimą nuo kelio iki teksto failo vietos (guru99)
  • Tada mes vadiname modulį "shutil.make_archive (" guru99 archyvas, "zip", root_dir) ", kad sukurtume archyvo failą, kuris bus ZIP formatu
  • Po to mes einame į šakninį katalogą dalykų, kuriuos norime suspausti. Taigi viskas kataloge bus užklijuota
  • Paleidus kodą, galite pamatyti, kad archyvo ZIP failas yra sukurtas dešinėje skydelio pusėje.

2 žingsnis)

  • Kai padarysite archyvo failą, dešiniuoju pelės mygtuku spustelėkite failą ir pasirinkite OS, ir jame bus rodomi jūsų archyvo failai, kaip parodyta žemiau

    Dabar failas archive.zip pasirodys jūsų OS („Windows Explorer“)

    3 žingsnis) Kai dukart spustelėsite failą, pamatysite visų jame esančių failų sąrašą.

    4 žingsnis) „Python“ galime labiau kontroliuoti archyvą, nes galime apibrėžti, kurį konkretų failą įtraukti į archyvą. Mūsų atveju į archyvą „guru99.txt“ ir „guru99.txt.bak“ įtrauksime du failus .

    Kodo paaiškinimas

    • Importuoti „Zipfile“ klasę iš ZIP failo „Python“ modulio. Šis modulis suteikia pilną kontrolę kuriant ZIP failus
    • Sukuriame naują „Zipfile“ su pavadinimu („testguru99.zip,„ w “)
    • Norint sukurti naują „Zipfile“ klasę, reikia perduoti leidimą, nes tai yra failas, todėl į failą reikia įrašyti informaciją kaip „newzip“
    • Mes naudojome kintamąjį „newzip“, kad nurodytume sukurtą ZIP failą
    • Naudodami kintamojo „newzip“ rašymo funkciją, į archyvą įtraukiame failus „guru99.txt“ ir „guru99.txt.bak“.

    Vykdydami kodą matote, kad dešinėje skydelio pusėje sukurtas failas pavadinimu „guru99.zip“

    Pastaba : Čia mes neduodame komandos „uždaryti“ failą, pvz., „Newzip.close“, nes mes naudojame „With“ srities užraktą, taigi, kai programa nepatenka į šios srities ribas, failas bus išvalytas ir uždarytas automatiškai.

    5 žingsnis) Kai jūs -> dešiniuoju pelės mygtuku spustelėkite failą (testguru99.zip) ir -> pasirinkite savo OS („Windows Explorer“) , aplanke bus rodomi archyvo failai, kaip parodyta žemiau.

    Du kartus spustelėjus failą "testguru99.zip", jis atidarys kitą langą, kuriame bus rodomi į jį įtraukti failai.

    Čia yra visas kodas

    „Python 2“ pavyzdys

    importuoti osimportuoti šleilįiš zipfile importo ZipFileiš os importo kelioimportuoti make_archivedef pagrindinis ():# Patikrinkite, ar failas yrajei kelias egzistuoja („guru99.txt“):# gauti kelią į failą dabartiniame katalogesrc = path.realpath ("guru99.txt");# pervadinti originalų failąos.rename ("karjera.guru99.txt", "guru99.txt")# dabar įdėkite daiktus į ZIP archyvąroot_dir, tail = path.split (src)shutil.make_archive ("guru99 archyvas", "zip", root_dir)# dar smulkesnis ZIP failų valdymassu „ZipFile“ („testguru99.zip“, „w“) kaip „newzip“:newzip.write ("guru99.txt")newzip.write ("guru99.txt.bak")jei __pavadinimas __ == "__main__":pagrindinis ()

    „Python 3“ pavyzdys

    importuoti osimportuoti šleilįiš zipfile importo ZipFileiš os importo kelioimportuoti make_archive# Patikrinkite, ar failas yrajei kelias egzistuoja („guru99.txt“):# gauti kelią į failą dabartiniame katalogesrc = path.realpath ("guru99.txt");# pervadinti originalų failąos.rename ("karjera.guru99.txt", "guru99.txt")# dabar įdėkite daiktus į ZIP archyvąroot_dir, tail = path.split (src)shutil.make_archive ("guru99 archyvas", "zip", root_dir)# dar smulkesnis ZIP failų valdymassu „ZipFile“ („testguru99.zip“, „w“) kaip „newzip“:newzip.write ("guru99.txt")newzip.write ("guru99.txt.bak")

    Santrauka

    • Norėdami supakuoti visą katalogą, naudokite komandą "shutil.make_archive (" vardas "," zip ", root_dir)
    • Norėdami pasirinkti failus, kuriuos norite užklijuoti, naudokite komandą „ZipFile.write (failo vardas)“