„Python“

Naudokite „python“, kad sukurtumėte failą ir katalogą

Naudokite „python“, kad sukurtumėte failą ir katalogą
Suspaustame faile yra daug failų, katalogų ir pakatalogių. Yra daug programų, leidžiančių suspausti bet kokio didelio failo ar katalogo failą ir nuskaityti failus ar aplankus, išgaunant suglaudintą failą. Kai norime bet kokį didelį aplanką ar aplanką perkelti į internetą, prieš perkeldami turinį geriau suspausti. Tai palengvina užduotį. Norėdami suspausti ir išgauti bet kokį didelį failą ar katalogą, galite naudoti „Python“ scenarijus. pašto failą modulis python naudojamas užduočiai atlikti. Kaip naudotis python3 norint suspausti bet kurį failą ar katalogą, parodyta šioje pamokoje naudojant įvairius pavyzdžius.

1 pavyzdys: vieno failo glaudinimas

Sukurkite naują failą pavadinimu „pašto kodas.py ' ir pridėkite šį kodą. pašto failą modulis importuojamas norint suspausti failą. temp.užtrauktukas priskiriamas kaip ZIP failo pavadinimas su rašymo režimu ir kitas - originalus failo vardas, temp.txt ir suspausti tipas yra nurodomi kaip parametrai rašymo metode.

importuoti ZIP failą
zip_file = zipfile.ZipFile ('temp.zip ',' w ')
zip_file.rašyti ('temp.txt ', compress_type = zipfile.ZIP_DEFLATED)
zip_file.Uždaryti()

Paleiskite scenarijų

$ python3 pašto kodas1.py

Dydis temp.txt yra 27 baitai o po suspaudimo - dydis temp.užtrauktukas yra 2 baitai.

2 pavyzdys: tam tikro katalogo suspaudimas

Sukurkite naują failą pavadinimu „pašto kodas2.py ' ir pridėkite šį kodą. Kataloge gali būti daug failų, aplankų ir pakatalogių. Norėdami perskaityti katalogo turinį, os python modulis yra importuojamas su pašto failą modulis katalogui suspausti. Šiame scenarijuje, mydir katalogas naudojamas glaudinimui.

# importuoti reikalingus modulius
 
importuoti os
importuoti ZIP failą
 
 
# Paskelbkite funkciją, kad būtų grąžinti visi konkretaus katalogo failų keliai
def retrieve_file_paths (dirName):
 
# sąrankos failų kelių kintamasis
filePaths = []
 
# Perskaitykite visus katalogus, pakatalogius ir failų sąrašus
root, katalogams, failams OS.vaikščioti (dirName):
failo vardui failuose:
# Sukurkite visą failų kelią naudodami os modulį.
filePath = os.kelias.prisijungti (šaknis, failo vardas)
filePaths.pridėti („filePath“)
 
# grąžinti visus kelius
grąžinti „filePaths“
 
 
# Paskelbkite pagrindinę funkciją
def pagrindinis ():
# Priskirkite katalogo pavadinimą, kurį norite užklijuoti
dir_name = 'mydir'
 
# Norėdami iškviesti visus priskirtojo katalogo failus ir aplankus, iškvieskite funkciją
filePaths = retrieve_file_paths (dir_name)
 
# atspausdinsite visų failų, kuriuos norite atsisiųsti, sąrašą
spausdinti ('Užtrauktas toks failų sąrašas:')
„fileName“ failo keliuose:
spausdinti (fileName)
 
# failų rašymas į ZIP failą
zip_file = zipfile.ZipFile (dir_name + '.zip ',' w ')
su zip_file:
# rašo kiekvieną failą po vieną
failui „filePaths“:
zip_file.rašyti (failas)
 
spausdinti (dir_name + '.ZIP failas sėkmingai sukurtas!„)
 
# Iškvieskite pagrindinę funkciją
jei __pavadinimas = = "__main__":
pagrindinis ()

Paleiskite scenarijų

$ python3 pašto kodas2.py

Dydis mydir yra 21 baitas o po suspaudimo - dydis mydir.užtrauktukas yra 2 baitai.

3 pavyzdys: Komandos, pateiktos komandinės eilutės argumentu, suspaudimas

Sukurkite naują failą pavadinimu „pašto kodas3.py ' ir pridėkite šį kodą. Norėdami perskaityti komandinės eilutės vertę, dar vienas python modulis sys yra importuojamas su os ir pašto failą moduliai.

# importuoti reikalingus modulius
 
importuoti os
importuoti sistemas
importuoti ZIP failą
 
# Paskelbkite funkciją, kad būtų grąžinti visi tam tikro katalogo failų keliai
def retrieve_file_paths (dirName):
 
# sąrankos failų kelių kintamasis
filePaths = []
 
# Perskaitykite visus katalogus, pakatalogius ir failų sąrašus
root, katalogams, failams OS.vaikščioti (dirName):
failo vardui failuose:
# Sukurkite visą failų kelią naudodami os modulį.
filePath = os.kelias.prisijungti (šaknis, failo vardas)
filePaths.pridėti („filePath“)
 
# grąžinti visus kelius
grąžinti „filePaths“
 
 
# Paskelbkite pagrindinę funkciją
def pagrindinis ():
 
# Patikrinkite du argumentus, pateiktus vykdant scenarijų
jei len (sys.argv) != 2:
spausdinti ("Jūs turite įvesti katalogo pavadinimą, kurį norite atsisiųsti")
sys.išėjimas (1)
 
# Nustatykite katalogo pavadinimą iš komandos argumento
dir_name = sys.argv [1]
 
# Nustatykite ZIP failo pavadinimą
zipFileName = dir_name + ".zip "
 
# Norėdami iškviesti visus priskirtojo katalogo failus ir aplankus, iškvieskite funkciją
filePaths = retrieve_file_paths (dir_name)
 
# atsispausdinti failų, kuriuos reikia atsisiųsti, sąrašą
spausdinti ('Užtrauktas toks failų sąrašas:')
„fileName“ failo keliuose:
spausdinti (fileName)
 
# rašyti failus ir aplankus į ZIP failą
zip_file = zipfile.„ZipFile“ („zipFileName“, „w“)
su zip_file:
# rašykite kiekvieną failą atskirai
failui „filePaths“:
zip_file.rašyti (failas)
 
spausdinti (failas „zipFileName +“ sėkmingai sukurtas!„)
 
# Iškvieskite pagrindinę funkciją
jei __pavadinimas = = "__main__":
pagrindinis ()

Paleiskite scenarijų

$ python3 pašto kodas3.py

testas komandų eilutės argumente nurodomas kaip katalogo pavadinimas. Dydis testas yra 21 baitas o po suspaudimo - dydis testas.užtrauktukas yra 2 baitai.

Tikiuosi, ši pamoka padės jums naudoti „python“ bet kokiam failui ar katalogui suspausti.

Nemokami ir atvirojo kodo žaidimų varikliai, skirti kurti „Linux“ žaidimus
Šiame straipsnyje bus pateiktas nemokamų ir atvirojo kodo žaidimų variklių, kurie gali būti naudojami kuriant 2D ir 3D žaidimus „Linux“, sąrašas. Toki...
„Tomb Raider for Linux“ pamoka
„Tomb Raider“ šešėlis yra dvyliktas „Tomb Raider“ serijos priedas - veiksmo ir nuotykių žaidimų franšizė, sukurta „Eidos Montreal“. Žaidimą kritikai i...
Kaip padidinti FPS sistemoje „Linux“?
FPS reiškia Kadrai per sekundę. FPS užduotis yra išmatuoti kadrų greitį atkuriant vaizdo įrašus ar žaidimus. Paprastais žodžiais, nepertraukiamų viso ...