Python võimaldab teil kiiresti luua zip / tar-arhiive.
Pärast käsku pakitakse kogu kataloog
shutil.make_archive(output_filename, 'zip', dir_name)
Pärast käsku saate hallata faile, mida soovite arhiivida
ZipFile.write(filename)
Siin on sammud zip-faili loomiseks Pythonis
Samm 1) Pythoni arhiivifaili loomiseks veenduge, et teie impordilause oleks õige ja korras. Siin on arhiivi impordi avaldus
from shutil import make_archive
Koodi selgitus
- Import make_archive klass moodulist shutil
- Funktsiooni split abil saate jaotada kataloogi ja failinime tekstifaili asukohani viivast teest (guru99)
- Seejärel kutsume moodulit "shutil.make_archive (" guru99 arhiiv, "zip", root_dir) "arhiivifaili loomiseks, mis on ZIP-vormingus
- Pärast seda sisestame juurkataloogi asjad, mida me tahame kokku tõmmata. Nii et kõik kataloogis olevad pakitakse
- Koodi käivitamisel näete, et paneeli paremas servas on loodud arhiivi ZIP-fail.
2. samm)
Nüüd kuvatakse teie arhiiv.zip-fail teie OS-is (Windows Explorer)
Samm 3) Kui topeltklõpsate failil, näete kõigi seal olevate failide loendit.
Samm 4) Pythonis saame arhiivi üle rohkem kontrollida, kuna saame määratleda, millise konkreetse faili arhiivi lisada. Meie puhul lisame arhiivi "guru99.txt" ja "guru99.txt.bak" alla kaks faili .
Koodi selgitus
- Importige Zipfile-klass ZIP-failist Pythoni moodul. See moodul annab täieliku kontrolli ZIP-failide loomise üle
- Loome uue nimega ZIP-faili ("testguru99.zip," w ")
- Uue Zipfile-klassi loomine nõuab loa sisestamist, kuna see on fail, seega peate faili teabe kirjutama newzip-failina
- Loodud zip-failile viitamiseks kasutasime muutujat "newzip"
- Muutuja "newzip" kirjutamisfunktsiooni abil lisame arhiivi failid "guru99.txt" ja "guru99.txt.bak"
Koodi käivitamisel näete, et fail luuakse paneeli paremas servas nimega "guru99.zip"
Märkus : Siin ei anna me ühtegi käsku faili nagu "newzip.close" sulgemiseks, kuna kasutame ulatuslukku "With", nii et kui programm jääb sellest ulatusest välja, puhastatakse fail ja see suletakse automaatselt.
Samm 5) Kui te -> paremklõpsate failil (testguru99.zip) ja -> valite oma operatsioonisüsteemi (Windows Explorer) , näitab see arhiivifaile kaustas, nagu allpool näidatud.
Kui topeltklõpsate failil "testguru99.zip", avaneb see veel üks aken ja see näitab selles olevaid faile.
Siin on täielik kood
Python 2 näide
importida osimport sulgurzipfile'ist importige ZipFileos-i imporditeeltalates shutil import make_archivedef main ():# Kontrollige, kas fail on olemaskui path.exists ("guru99.txt"):# saada faili tee praeguses kataloogissrc = path.realpath ("guru99.txt");# nimetage algne fail ümberos.rename ("karjäär.guru99.txt", "guru99.txt")# nüüd pane asjad ZIP-arhiiviroot_dir, saba = path.split (src)shutil.make_archive ("guru99 arhiiv", "zip", root_dir)# veel täpsemat kontrolli ZIP-failide ülekoos ZipFile'iga ("testguru99.zip", "w") newzip-iga:newzip.write ("guru99.txt")newzip.write ("guru99.txt.bak")kui __nimi __ == "__main__":peamine ()
Python 3 näide
importida osimport sulgurzipfile'ist importige ZipFileos-i imporditeeltalates shutil import make_archive# Kontrollige, kas fail on olemaskui path.exists ("guru99.txt"):# saada faili tee praeguses kataloogissrc = path.realpath ("guru99.txt");# nimetage algne fail ümberos.rename ("karjäär.guru99.txt", "guru99.txt")# nüüd pane asjad ZIP-arhiiviroot_dir, saba = path.split (src)shutil.make_archive ("guru99 arhiiv", "zip", root_dir)# veel täpsemat kontrolli ZIP-failide ülekoos ZipFile'iga ("testguru99.zip", "w") newzip-iga:newzip.write ("guru99.txt")newzip.write ("guru99.txt.bak")
Kokkuvõte
- Kogu kataloogi tihendamiseks kasutage käsku "shutil.make_archive (" nimi "," zip ", juurkataloog)
- Zip-failide valimiseks kasutage käsku "ZipFile.write (failinimi)"