Salta al contenuto

Archivi

  • Gennaio 2022
  • Dicembre 2021
  • Novembre 2021
  • Ottobre 2021
  • Settembre 2021

Categorie

  • Nessuna categoria
Trend RepositoryArticles and guides
Articles

Python Unzip File: come estrarre file singoli o multipli

Il Settembre 24, 2021 da admin

Python ZipFile è una classe di modulo zipfile per leggere e scrivere file zip. ZIP è il formato di file di archivio che supporta la compressione dei dati senza perdite.

Per compressione senza perdite, intendiamo che l’algoritmo di compressione permette di ricostruire interamente i dati originali dai dati compressi.

Un file ZIP è un singolo file contenente uno o più file compressi, che offre un modo semplice per rendere più piccoli i file di grandi dimensioni e tenere insieme i file correlati.

  • Python unzip file
  • Sintassi
  • Esempio di Python unzip
  • Output
  • Estrarre tutti i file da un file zip in un’altra directory
  • Output
  • Estrarre i file da un grande file zip in base alla condizione
  • Conclusione
  • Vedi anche

Python unzip file

Per lavorare sui file zip usando Python, useremo un modulo python integrato chiamato zipfile. Nel modulo zipfile di Python, la classe ZipFile fornisce una funzione membro per estrarre tutto il contenuto dell’archivio ZIP.

Per decomprimere un file in Python, usate il metodo ZipFile.extractall(). Il metodo extractall() prende un percorso, membri, pwd come argomento, ed estrae tutto il contenuto.

Sintassi

ZipFile.extractall(path=None, members=None, pwd=None)

Accetta i seguenti parametri :

  1. path: posizione dove il file zip deve essere estratto; se non fornito, estrarrà il contenuto nella directory corrente.
  2. members: lista di file da estrarre. Estrarrà tutti i file nello zip se questo argomento non è fornito.
  3. pwd: Se il file zip è criptato, allora passa la password in questo argomento, il default è None.

Esempio di Python unzip

Diciamo che, nella mia directory di lavoro corrente, ho un file zip chiamato Mail3.zip, e voglio decomprimerlo usando ZipFile.extractall().

Vedi il seguente codice.

# app.pyfrom zipfile import ZipFilewith ZipFile('Mail3.zip', 'r') as zipObj: # Extract all the contents of zip file in current directory zipObj.extractall()

Output

python3 app.py

Estrarrà i file nella stessa directory del tuo file di programmazione app.py.

Estrarrà tutti i file nello zip nella directory corrente. Se i file con lo stesso nome sono già presenti nella posizione di estrazione, sovrascriverà quei file.

Abbiamo usato l’istruzione Python with per aprire i file. “Python with” assicura che i descrittori di file aperti siano chiusi automaticamente dopo che l’esecuzione del programma lascia il contesto dell’istruzione with.

Estrarre tutti i file da un file zip in un’altra directory

Possiamo estrarre tutti i file dal file zip in un’altra directory, e per farlo, dobbiamo passare il percorso di destinazione come argomento in extractall(). Il percorso può essere relativo o assoluto.

Vedi il seguente codice.

# app.pyfrom zipfile import ZipFilewith ZipFile('Mail3.zip', 'r') as zipObj: # Extract all the contents of zip file in different directory zipObj.extractall('temp') print('File is unzipped in temp folder') 

Qui, un oggetto ZipFile viene creato chiamando un costruttore ZipFile, che accetta il nome del file zip e parametri di modalità. Creiamo l’oggetto ZipFile in modalità READ e lo nominiamo come zipObj.

In uscita. Se la cartella temp non c’è, creerà quella cartella nella directory corrente e decomprimerà tutto il contenuto del file Mail3.zip.

Output

python3 app.pyFile is unzipped in temp folder

Estrarre i file da un grande file zip in base alla condizione

Diciamo che abbiamo un enorme file zip, e abbiamo bisogno di alcuni file da migliaia di file nell’archivio. Decomprimere tutti i file da un grande zip può richiedere minuti. Ma se siete interessati solo ad alcuni dei file archiviati, allora invece di decomprimere l’intero file, possiamo estrarre anche il singolo file dal file zip.

La classe ZipFile di Python fornisce una funzione membro per estrarre un singolo da un file ZIP.

ZipFile.extract(member, path=None, pwd=None)

Vedi il seguente codice.

# app.pyfrom zipfile import ZipFilewith ZipFile('Mail3.zip', 'r') as zipObject: listOfFileNames = zipObject.namelist() for fileName in listOfFileNames: if fileName.endswith('.py'): # Extract a single file from zip zipObject.extract(fileName, 'temp_py') print('All the python files are extracted')

Se i nomi dei file hanno l’estensione .py, allora verrà estratto nella cartella temp_py. Altrimenti, non estrarrà i file.

Conclusione

Compattare i file in Python è molto facile perché Python fornisce il modulo zipfile.

Il modulo zipfile ha tutte le funzioni di decomprimere file singoli o multipli in base alle condizioni.

Finalmente, il tutorial Python Unzip: come estrarre file singoli o multipli è finito.

Vedi anche

Python zip()

Python zip lista di liste

Python zip dizionario

Scompatta le tuple in Python

Python lista in dataframe

Python lista in dizionario

Lascia un commento Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Archivi

  • Gennaio 2022
  • Dicembre 2021
  • Novembre 2021
  • Ottobre 2021
  • Settembre 2021

Meta

  • Accedi
  • Feed dei contenuti
  • Feed dei commenti
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Tema da ThemeinProgress | Offerto orgogliosamente da WordPress