Python

Python ZIP fails

Python ZIP fails

Python ir vispārējas nozīmes programmēšanas valoda. To plaši izmanto mašīnmācīšanās, dziļo mācību, mākslīgā intelekta un datu zinātņu projektos. Python ir ielādēts ar ērtiem iebūvētiem moduļiem, funkcijām un paziņojumiem. Tāpēc tas daudz palīdz programmētājiem, veicot daudzu veidu uzdevumus. Ar failu saistītā uzdevuma izpildīšana Python ir ļoti vienkārša, jo ir pieejami saistītie moduļi. Mēs varam veikt jebkura veida ar failiem saistītus uzdevumus, t.i.e., faila lasīšana, rakstīšana, meklēšana un dzēšana.

ZIP ir populārs failu formāts, kas piedāvā bezzudumu saspiešanu. ZIP fails satur vienu vai vairākus saspiestus failus un ir viens fails. Kompresijas algoritmi nodrošina, ka mēs varam bez zaudējumiem atjaunot faktiskos datus no saspiestajiem datiem. Ir vairākas ZIP faila izmantošanas priekšrocības. Izmantojot ZIP failus, visus saistītos datus mēs varam ievietot vienā failā ar samazinātu faila lielumu. Šifrēšanu var izmantot arī, veidojot ZIP failus. ZIP faili lielākoties tiek izveidoti un izmantoti, kad mums ir jāpārsūta dati, izmantojot tiešsaistes avotus, piemēram, sociālo mediju lietojumprogrammas un e-pastu. Tas nodrošina ātrāko datu piegādi. Python nodrošina iebūvētu zipfile moduli darbam ar ZIP failiem. Šajā ceļvedī mēs iemācīsimies veikt dažādus ar zip failiem saistītus uzdevumus ar piemēriem.

Izveidojiet ZIP failu

Izveidosim zipfailu vairākiem saistītiem failiem.

#importējot zipfile moduli
no zipfile importa ZipFile
#specifying failu ceļš
myfiles = ['/ home / linuxhint / Documents / myfile.txt ',' / home / linuxhint / Documents / myfile1.txt ']
#specifying zip faila nosaukums un ceļš
ar ZipFile ('myzipfile.zip ',' w ') kā zip:
man i failos:
#wiring zip failus
zip.rakstīt (i)
drukāt ("ZIP fails ir veiksmīgi izveidots")

Rezultāts
ZIP fails ir veiksmīgi izveidots.

Labi! Tagad sapratīsim iepriekš norādīto kodu ZIP faila izveidošanai.

#importējot zipfile moduli
no zipfile importa ZipFile

Šajā koda rindiņā mēs esam importējuši ZipFile klasi no zipfile moduļa. ZipFile klase tiek izmantota ZIP faila rakstīšanai. Lai izveidotu ZIP failu, mums nav jāizmanto citas zipfile klases.

#specifying failu ceļš
myfiles = ['/ home / linuxhint / Documents / myfile.txt ',' / home / linuxhint / Documents / myfile1.txt ']

Šeit mēs esam izveidojuši failu sarakstu, kurā ir saspiesto failu ceļš.

#specifying zip faila nosaukums un ceļš
ar ZipFile ('myzipfile.zip ',' w ') kā zip:
priekš manis failos:
#wiring zip failus
zip.rakstīt (i)

Šajā kodu blokā mēs esam izveidojuši un atvēruši ZIP failu rakstīšanas režīmā. Jaunizveidotā ZIP faila nosaukums ir 'myzipfile.zip ', un tas tiek izveidots pašreizējā darba direktorijā. Ja vēlaties izveidot ZIP failu citā direktorijā, norādiet šī direktorija ceļu ar ZIP faila nosaukumu. Write () ir iebūvēta funkcija, kas raksta failu ZIP failā. Lai izveidotu zip failu visiem noteiktas mapes vai direktorijas failiem, mums ir nepieciešama piekļuve direktorijiem un apakšdirektorijiem. Tāpēc mums ir jāimportē os modulis un arī zipfile modulis mūsu Python skriptā. Izveidosim ZIP failu no visiem failiem, kas ievietoti norādītajā direktorijā.

# ZipFile klases importēšana no zipfile moduļa
no zipfile importa ZipFile
#importējot os moduli
importēt os
# saraksts o Saglabā saspiesto failu nosaukumu
myfiles = []
saknēm, direktorijiem, failiem os.staigāt ("/ home / linuxhint / Documents / myfolder"):
faila nosaukumam failos:
# pievienojas virknēm, lai izveidotu failu ceļu
filepath = os.ceļš.pievienoties (sakne, faila nosaukums)
myfiles.pievienot (filepath)
print ("Saspiežamie faili ir:")
drukāt (myfiles)
ar ZipFile ("/ home / linuxhint / Downloads / myzipfile.zip ", 'w') kā zipObj:
man i failos:
# failu rakstīšana
zipObj.rakstīt (i)
drukāt ("ZIP fails ir veiksmīgi izveidots")

Rezultāts

Sadalīsim iepriekš norādīto kodu gabalos un mēģināsim to saprast.

myfiles = []
saknēm, direktorijiem, failiem os.staigāt ("/ home / linuxhint / Documents / myfolder"):
faila nosaukumam failos:
# pievienojas virknēm, lai izveidotu failu ceļu
filepath = os.ceļš.pievienoties (sakne, faila nosaukums)
myfiles.pievienot (filepath)
print ("Saspiežamie faili ir:")
drukāt (myfiles)

Kodu blokā, pirmkārt, mēs esam izveidojuši tukšu sarakstu, lai saglabātu visu saspiesto failu ceļu.  Mēs esam izmantojuši os. Walk () funkcija, lai iegūtu visu failu ceļu. For cikls tiek ieviests, lai iegūtu faila ceļu un saglabātu to mūsu sarakstā.

ar ZipFile ("\ home \ linuxhint \ Downloads \ myzipfile.zip ", 'w') kā zipObj:

Šajā kodu blokā mēs esam izveidojuši faila objektu un pievienojuši izveidojamā ZIP faila ceļu. Fails tiek atvērts rakstīšanas noskaņojumā.

man i failos:
# failu rakstīšana
zipObj.rakstīt (i)
drukāt ("ZIP fails ir veiksmīgi izveidots")

Iepriekš norādītajā kodu blokā mēs atkārtojam failu sarakstu un ierakstām visus failus zip failā, izmantojot funkciju write ().

Labi! Tas viss bija par ZIP failu izveidi Python.

Skatiet ZIP faila saturu

Tagad apspriedīsim, kā redzēt ZIP faila saturu. Lasīšanas noskaņojumā tiks atvērts ZIP faila objekts, lai apskatītu ZIP faila saturu.

# ZipFile klases importēšana no zipfile moduļa
no zipfile importa ZipFile
ar ZipFile ("/ home / linuxhint / Downloads / myzipfile.zip ", 'r') kā zipObj:
zipObj.printdir ()

Funkcija printdir () izdrukā ZIP faila saturu tabulas formā.

Rezultāts
Izvade parāda ZIP faila saturu.

Izvelciet ZIP faila saturu

Labi! Tagad mēs esam iepazinušies ar ZIP failu izveidi un ZIP failu satura skatīšanu. Nākamais punkts ir ZIP faila satura izvilkšana. Mēs varam iegūt ZIP faila saturu, izmantojot iebūvēto funkciju extractall (). Īstenosim to savā Python skriptā.

#importējot klasi ZipFile no zipfile moduļa
no zipfile importa ZipFile
#zip faila ceļa saglabāšana ceļa mainīgajā
ceļš = "/ home / linuxhint / Downloads / myzipfile.zip "
ar ZipFile (ceļš, 'r') kā zipObj:
# ZIP faila satura izvilkšana
zipObj.extractall ()
drukāt ("Faili ir veiksmīgi izvilkti")

Rezultāts

Secinājums

ZIP ir populārs failu formāts, kas nodrošina bezzudumu saspiešanu. Programmā Python mēs varam izveidot un iegūt zip failus, izmantojot iebūvēto zipfile moduli. Šajā rakstā ar piemēriem ir izskaidrots ar zip failu saistīts uzdevums.

Izmantojot X-Mouse Button Control, atšķirīgi mainiet peles pogas atšķirīgai programmatūrai
Varbūt jums ir nepieciešams rīks, kas varētu mainīt peles vadību ar katru lietoto lietojumprogrammu. Ja tas tā ir, varat izmēģināt lietojumprogrammu a...
Microsoft Sculpt Touch bezvadu peles apskats
Es nesen lasīju par Microsoft Sculpt Touch bezvadu pele un nolēma to nopirkt. Pēc kāda laika izmantošanas es nolēmu dalīties savā pieredzē ar to. Šo b...
AppyMouse ekrāna skārienpaliktnis un peles rādītājs Windows planšetdatoriem
Planšetdatoru lietotājiem bieži pietrūkst peles rādītāja, it īpaši, ja viņi parasti lieto klēpjdatorus. Skārienekrāna viedtālruņiem un planšetdatoriem...